1
resposta

Desafio - Momento dos projetos - parte 1

## Momento dos projetos

#7) Para um estudo envolvendo o nível de multiplicação de bactérias em uma colônia, foi coletado o número de bactérias por dia
#(em milhares) e pode ser observado a seguir: [1.2, 2.1, 3.3, 5.0, 7.8, 11.3, 16.6, 25.1, 37.8, 56.9]. Tendo esses valores,
#faça um código que gere uma lista contendo o percentual de crescimento de bactérias por dia, comparando o número de bactérias em cada dia
#com o número de bactérias do dia anterior. Dica: para calcular o percentual de crescimento
#usamos a seguinte equação: 100 * (amostra_atual - amostra_passada) / (amostra_passada).

quantidade_bacterias = [1.2, 2.1, 3.3, 5.0, 7.8, 11.3, 16.6, 25.1, 37.8, 56.9]
amostra_passada = 0.0
amostra_atual = 0.0

for indice, valor in enumerate(quantidade_bacterias):
  if indice == 0:
    amostra_passada = valor
    print(f'Dia {indice}. Total de bactérias: {valor}')
  else:
    amostra_atual = valor
    print(f'Dia {indice}. Total de bactérias: {valor}. Crescimento: {(100 * (amostra_atual - amostra_passada) / (amostra_passada)):.2f}%')
    amostra_passada = valor

#8) Para uma seleção de produtos alimentícios, precisamos separar o conjunto de IDs dados por números inteiros sabendo que os produtos com ID par são doces
#e os com ID ímpar são amargos. Monte um código que colete 10 IDs. Depois, calcule e mostre a quantidade de produtos doces e amargos.

produtos = {'doces':[],
            'amargos':[]}
for i in range (1, 11):
  numero = int(input(f'Informe o ID do produto {i}: '))
  if numero % 2 == 0:
    produtos['doces'].append(numero)
  else:
    produtos['amargos'].append(numero)

print(f'Existem {len(produtos['doces'])} produtos doces e {len(produtos['amargos'])} produtos amargos.')


#9) Desenvolva um programa que informa a nota de um(a) aluno(a) de acordo com suas respostas.
#Ele deve pedir a resposta desse(a) aluno(a) para cada questão e é preciso verificar se a resposta foi igual ao gabarito.
#Cada questão vale um ponto e existem as alternativas A, B, C ou D.


gabarito = ['D','A','C','B','A','D','C','C','A','B']
resposta = ''
nota_valida = False
acertos = 0

print('Informe as 10 respostas do aluno para calcular a nota final dele!')
for i in range (1, 11):
  nota_valida = False
  while nota_valida == False:
    resposta = input(f'Informe a resposta da questão {i}: ').upper()
    if (resposta == 'A') or (resposta == 'B') or (resposta == 'C') or (resposta == 'D'):
      nota_valida = True
      if resposta == gabarito[i-1]:
        acertos += 1

print(f'A nota final do aluno foi: {acertos}')

#10) Um instituto de meteorologia deseja fazer um estudo de temperatura média de cada mês do ano.
#Para isso, você precisa fazer um código que colete e armazene essas temperaturas médias em uma lista.
#Depois, calcule a média anual das temperaturas e mostre todas as temperaturas acima da média anual e em que mês elas ocorreram,
#mostrando os meses por extenso (Janeiro, Fevereiro, etc.).

temperaturas_meses = {'meses': ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'],
                      'temperaturas': []}
for i in range(0, 12):
  temperaturas_meses['temperaturas'].append(float(input(f'Informe a temperatura média do mês de {temperaturas_meses['meses'][i]}: ')))

media_temperaturas = sum(temperaturas_meses['temperaturas'])/12

for i in range(0, 12):
  if temperaturas_meses['temperaturas'][i] > media_temperaturas:
    print(f'A temperatura média de {temperaturas_meses['meses'][i]}: {temperaturas_meses['temperaturas'][i]:.2f}ºC foi acima da média anual ({media_temperaturas:.2f}ºC)')

#11) Uma empresa de e-commerce está interessada em analisar as vendas dos seus produtos. Os dados das vendas foram armazenados em um dicionário:
#Escreva um código que calcule o total de vendas e o produto mais vendido.

produtos_vendidos = {'Produto A': 300, 'Produto B': 80, 'Produto C': 60,
                    'Produto D': 200, 'Produto E': 250, 'Produto F': 30}

total_vendas = sum(produtos_vendidos.values())
produto_mais_vendido = max(produtos_vendidos, key=produtos_vendidos.get)

print(f'Total de vendas: {total_vendas}. Produto mais vendido: {produto_mais_vendido}!')
1 resposta

Olá, Vinicius! Como vai?

Parabéns pela resolução das atividades!

Observei que você explorou o uso de listas e dicionários para organizar os dados, utilizou muito bem estruturas de repetição e condicionais para validar entradas e ainda compreendeu a importância de funções como sum() e max() para simplificar cálculos em Python.

Uma dica interessante para o futuro é separar a lógica em funções, o que torna o código mais reutilizável e organizado. Por exemplo, no exercício das bactérias você pode encapsular o cálculo em uma função:

def crescimento_bacterias(amostras):
    resultados = []
    for i in range(1, len(amostras)):
        crescimento = 100 * (amostras[i] - amostras[i-1]) / amostras[i-1]
        resultados.append(crescimento)
        print(f"Dia {i}: Total de bactérias: {amostras[i]}. Crescimento: {crescimento:.2f}%")
    return resultados

quantidade_bacterias = [1.2, 2.1, 3.3, 5.0, 7.8, 11.3, 16.6, 25.1, 37.8, 56.9]
crescimento_bacterias(quantidade_bacterias)

Resultado:

Dia 1: Total de bactérias: 2.1. Crescimento: 75.00%
Dia 2: Total de bactérias: 3.3. Crescimento: 57.14%
Dia 3: Total de bactérias: 5.0. Crescimento: 51.52%
Dia 4: Total de bactérias: 7.8. Crescimento: 56.00%
Dia 5: Total de bactérias: 11.3. Crescimento: 44.87%
Dia 6: Total de bactérias: 16.6. Crescimento: 46.90%
Dia 7: Total de bactérias: 25.1. Crescimento: 51.20%
Dia 8: Total de bactérias: 37.8. Crescimento: 50.60%
Dia 9: Total de bactérias: 56.9. Crescimento: 50.53%
[75.00000000000001,
 57.142857142857125,
 51.51515151515153,
 56.0,
 44.87179487179489,
 46.90265486725664,
 51.20481927710843,
 50.59760956175297,
 50.52910052910054]

Isso facilita a manutenção e permite reaproveitar o cálculo em outros contextos.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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