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

[Projeto] [Projeto] Desafio: hora da prática | Python para Dados: primeiros passos | PT 2

Momento dos Projetos

  1. Crescimento de colônia de bactérias
bacterias = [1.2, 2.1, 3.3, 5.0, 7.8, 11.3, 16.6, 25.1, 37.8, 56.9]
crescimento_percentual = []

for i in range(1, len(bacterias)):
    amostra_atual = bacterias[i]
    amostra_passada = bacterias[i-1]
    percentual = 100 * (amostra_atual - amostra_passada) / amostra_passada
    crescimento_percentual.append(round(percentual, 2))

print(f"Percentual de crescimento diário: {crescimento_percentual}")
  1. Separação de IDs (Doces e Amargos)
doces = 0
amargos = 0

for i in range(10):
    id_produto = int(input(f"Digite o ID do {i+1}º produto: "))
    if id_produto % 2 == 0:
        doces += 1
    else:
        amargos += 1

print(f"\nQuantidade de produtos doces (ID par): {doces}")
print(f"Quantidade de produtos amargos (ID ímpar): {amargos}")
  1. Corretor de prova
gabarito = {
    1: 'D', 2: 'A', 3: 'C', 4: 'B', 5: 'A',
    6: 'D', 7: 'C', 8: 'C', 9: 'A', 10: 'B'
}

nota = 0
print("--- Sistema de Correção de Provas ---")
for questao in range(1, 11):
    resposta = input(f"Resposta da questão {questao:02d} (A, B, C ou D): ").strip().upper()
    if resposta == gabarito[questao]:
        nota += 1

print(f"\nNota final do(a) aluno(a): {nota}/10")
  1. Análise de temperatura anual
meses = [
    "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho",
    "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"
]
temperaturas = []

# Coleta de dados
for mes in meses:
    temp = float(input(f"Digite a temperatura média de {mes}: "))
    temperaturas.append(temp)

media_anual = sum(temperaturas) / len(temperaturas)
print(f"\nA média anual das temperaturas foi de: {media_anual:.1f}°C\n")

print("Meses com temperaturas acima da média anual:")
for i in range(12):
    if temperaturas[i] > media_anual:
        print(f"- {meses[i]}: {temperaturas[i]}°C")
  1. Vendas de e-commerce
vendas = {'Produto A': 300, 'Produto B': 80, 'Produto C': 60, 'Produto D': 200, 'Produto E': 250, 'Produto F': 30}

total_vendas = sum(vendas.values())

# Buscando a chave com o maior valor
produto_mais_vendido = max(vendas, key=vendas.get)

print(f"Total de vendas: {total_vendas}")
print(f"Produto mais vendido: {produto_mais_vendido} ({vendas[produto_mais_vendido]} unidades)")
1 resposta
solução!

Oii Estudante, tudo bem?

Obrigada por compartilhar suas soluções aqui no fórum, com certeza vai ajudar outros alunos que estejam trabalhando nesses mesmos desafios.

Os cinco projetos estão bem resolvidos. Alguns pontos que valem destaque:

No crescimento de bactérias, a lógica de percorrer a lista a partir do índice 1 e comparar com i-1 é exatamente a abordagem certa para calcular variação entre elementos consecutivos.

No corretor de prova, o uso de .strip().upper() antes de comparar com o gabarito é um cuidado bacana: evita erros por espaços acidentais ou letras minúsculas na entrada do usuário.

No e-commerce, o uso de max(vendas, key=vendas.get) para encontrar o produto mais vendido é elegante e direto. Uma alternativa com o mesmo resultado seria max(vendas, key=lambda k: vendas[k]), que deixa explícita a função de comparação, mas a sua versão já está ótima.

Parabéns pelo cuidado na organização e legibilidade do código em todos os exercícios!

Para continuar explorando Python voltado para dados:

Conte com a Alura para evoluir seus estudos. Em caso de dúvidas, fico à disposição.

Bons estudos!

Sucesso

Imagem da comunidade