1
resposta

Resolução: Exercícios

1 -

lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]

# Definindo as variaveis utilizando as funções built-in
tam = len(lista)
maior = max(lista)
menor = min(lista)
soma = sum(lista)

#Imprimindo a saída dos valores encontrados nas variáveis que definimos
print(f"A lista possui {tam} números em que o maior número é {maior} e o menor número é {menor}. A soma dos valores presentes nela é igual a {soma}")

2 -

# Criando uma função que faz a tabuada de um número inteiro definido pelo usuário

num = (int(input('Digite um número inteiro para ver a tabuada: ')))

# Criando a função de tabuada
def tabuada(numero: int):
  print(f'Criando a tabuada do número: {num}')
  for i in range(11):
    print(f'{num} x {i} = {num * i}')

# Lendo a função do número solicitado pelo usuário
tabuada(num)

3 -

numeros = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]

# Criando a variavel vazia que vai receber os números que sao multiplos de 3
mult_3 = []

# Criando a função que gera a lista dos multiplos de 3 a partir da lista de números
def multiplos_3(lista: list) -> list:
  for i in range(len(numeros)):
    if numeros[i] % 3 == 0:
      mult_3.append(numeros[i])
  return mult_3

mult_3 = multiplos_3(numeros)
mult_3

4 -

lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# Utilizando a função map() para aplicar a função lambda em cada número da lista
quadrado_lista = list(map(lambda x: x ** 2, lista))
quadrado_lista

5 -

notas = []

# Fazendo a iteração para perguntar as notas que os jurados deram e guardando as notas na variável notas
for i in range(1,6):
  nota = float(input(f'Digite a {i}ª nota do Skatista: '))
  notas.append(nota)

# Função para remover a maior e menor nota e retornar a média das notas restantes
def media(lista: list) -> float:
  lista.remove(max(lista))
  lista.remove(min(lista))
  media = sum(lista) / len(lista)
  return media

media(notas)

# Mostrando o resultado com a casa decimal definida
print(f'A média do skatista foi de: {round(media(notas),2)}')

6 -

notas_estudante = []

# fazendo a iteração para guardar as 4 notas na variável notas_estudante
for i in range(1,5):
  nota = float(input(f'Digite a {i}ª nota do aluno: '))
  notas_estudante.append(nota)

# Faremos a função para definir a maior e menor nota, além da média e mostrar também a situação caso aprovado ou reprovado
def boletim(lista: list) -> float:
  maior = max(lista)
  menor = min(lista)
  media = sum(lista) / len(lista)
  if media >= 6.0:
    situacao = "Aprovado(a)"
  else:
    situacao = "Reprovado(a)"
  return (maior, menor, media, situacao)

maior_nota, menor_nota, media_estudante, situacao = boletim(notas_estudante)

print(f'O(a) estudante obteve uma média de {media_estudante:.2f}, com a sua maior nota de {maior_nota} pontos e a menor nota de {menor_nota} pontos e foi {situacao}')

7 -

nomes = ["joão", "MaRia", "JOSÉ"]
sobrenomes = ["SILVA", "souza", "Tavares"]

# Função lambda que recebe duas listas e itera em cada uma concatenando seu nome e sobrenome
nome_completo = map(lambda nome, sobrenome: f'{nome.title()} {sobrenome.title()}', nomes, sobrenomes)

for i in nome_completo:
  print(f'Nome completo: {i}')

8 -

gols_marcados = [2, 1, 3, 1, 0]
gols_sofridos = [1, 2, 2, 1, 3]

def calcula_pontos(gols_marcados, gols_sofridos):
  pontos = 0
  for i in range(len(gols_marcados)):
    if gols_marcados[i] > gols_sofridos[i]:
      pontos += 3
    elif gols_marcados[i] == gols_sofridos[i]:
      pontos += 1
    aproveitamento = 100 * pontos / (len(gols_marcados) * 3)
  return (pontos, aproveitamento)

pontos, aproveitamento = calcula_pontos(gols_marcados, gols_sofridos)
print(f'O time fez {pontos} pontos e teve um aproveitamento de {aproveitamento:.2f}%')

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Cean! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.

Gostei de ver como você utilizou funções, listas e lambdas para resolver cada exercíci!

Uma dica interessante para o futuro é testar o uso de list comprehension para deixar o código mais conciso. Veja este exemplo:


numeros = [1, 2, 3, 4, 5, 6]
multiplos_3 = [n for n in numeros if n % 3 == 0]
print(multiplos_3)

Esse código cria uma nova lista apenas com os números múltiplos de 3, sem precisar usar append().

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!