Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

Aula 2 - Desafio: hora da prática

# ==========================================
# AQUECIMENTO
# ==========================================

# 1. Escreva um código que lê a lista abaixo e faça: tamanho, maior, menor e soma...
lista = [16, 14, 63, 65, 17, 99, 70, 11, 20, 48, 79, 32, 17, 89, 12, 25, 66]

tam = len(lista)
maior = max(lista)
menor = min(lista)
soma = sum(lista)

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. Escreva uma função que gere a tabuada de um número inteiro de 1 a 10...
def gerar_tabuada(numero):
    print(f"Tabuada do {numero}:")
    for i in range(0, 11):
        print(f"{numero} x {i} = {numero * i}")

num_escolhido = int(input("Digite um número inteiro para ver a tabuada: "))
gerar_tabuada(num_escolhido)

# 3. Crie a função que leia a lista abaixo e retorne uma nova lista com os múltiplos de 3...
def filtrar_multiplos_3(lista_numeros):
    return [num for num in lista_numeros if num % 3 == 0]

dados = [97, 80, 94, 88, 80, 1, 16, 53, 62, 32, 24, 99]
mult_3 = filtrar_multiplos_3(dados)
print(f"Múltiplos de 3: {mult_3}")

# 4. Crie uma lista dos quadrados dos números da seguinte lista utilizando lambda e map()...
numeros_quadrados = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
quadrados = list(map(lambda x: x ** 2, numeros_quadrados))
print(f"Quadrados dos números: {quadrados}")


# ==========================================
# APLICANDO A PROJETOS
# ==========================================

# 5. Você foi contratado(a) como cientista de dados de uma associação de skate...
notas = []
for i in range(5):
    nota = float(input(f"Digite a nota da {i+1}ª pessoa jurada: "))
    notas.append(nota)

notas.remove(max(notas))
notas.remove(min(notas))
media = sum(notas) / len(notas)

print(f"Nota da manobra: {media:.2f}")

# 6. Para atender a uma demanda de uma instituição de ensino para a análise do desempenho...
def analisar_notas(lista_notas):
    maior = max(lista_notas)
    menor = min(lista_notas)
    media = sum(lista_notas) / len(lista_notas)
    situacao = "Aprovado(a)" if media >= 6.
1 resposta
solução!

Oi, Julia! Como vai?

Gostei da forma como você organizou a resolução dos desafios, separando cada exercício e utilizando recursos como len(), max(), min(), sum(), map() com lambda e compreensão de listas. Isso deixa o código mais legível e mostra que você explorou diferentes formas de resolver os problemas. No exercício 6, faltou apenas concluir a expressão da variável situacao, mas a estrutura da função está no caminho certo.

Uma dica interessante para o futuro é utilizar a função enumerate() quando precisar percorrer uma lista, exibindo também a posição de cada elemento. Veja este exemplo:


notas = [7, 8, 9]

for indice, nota in enumerate(notas):
    print(indice, nota)

Esse código percorre a lista, mostrando o índice e o valor de cada elemento, facilitando a leitura dos dados.

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