Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Sugestão] Solução incorreta do exercícío

A resolução do exercício
2) Escreva um programa para calcular quantos dias levará para a colônia de uma bactéria A ultrapassar ou igualar a colônia de uma bactéria B, com base nas taxas de crescimento de 3% e 1,5% respectivamente. Considere que a colônia A inicia com 4 elementos e a B com 10. (https://cursos.alura.com.br/course/python-data-science-primeiros-passos/task/123756?b2cUser=true)

Está incorreta pois não considera a equação geral de crescimento bacteriano corretamente. A qual é N(t) = N₀ · e^(μ · t), onde t é dado em Horas.
Sendo assim, a colonia A passa a colonia B em 2,58 dias e não em 63 dias como sugere a resolução.
É importante que ao solicitar esse tipo de exercícío uma equação geral seja passada para que todos utilizem a mesma base de calculo.

A correta resolução do exercicio deveria ser:
import math
t = 0
A = 4math.e(0.03t)
B = 10math.e(0.015t)

while A < B:
t +=1
A = round(4math.e(0.03t),2)
B = round(10math.e(0.015t),2)
d = round(t/24,2)
print(f'Colonia A com {A} bacterias e colonia B com {B} bacterias em {d} dias')

2 respostas
solução!

Ei, Thamires! Tudo bem?

Obrigada por compartilhar o seu feedback sobre o exercício! O seu código está bem estruturado e faz uso correto das funções matemáticas para calcular o crescimento das colônias.

Sua abordagem é muito válida e oferece um resultado mais preciso, considerando o crescimento contínuo. O foco na atividade é praticar estruturas de repetição como o while, e talvez por isso a solução sugerida tenha simplificado o cálculo.

O seu retorno sobre a precisão do exercício será levada em consideração em momentos de melhorias, dessa forma nos ajuda a criar o conteúdo cada vez mais.

Continue se dedicando aos estudos e qualquer dúvida, compartilhe.

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

Encontrei outra resolução incorreta nos exercícios da lista https://cursos.alura.com.br/course/python-data-science-primeiros-passos/task/123756
Testei a solução do Exercício 4 e ele não está me trazendo a média correta. Fiz um debug e parece que o código não está considerando a última resposta imputada para calcular a média. Assim ao inserir as temperaturas: 10, 10, 273 e -273 a resposta de média dele retornou 97,67 ao invés de 5.

Resolução sugerida pelo instrutor:
coletamos a temperatura
temperatura = float(input('Insira a temperatura em Celsius: '))

inicializamos uma contadora e soma para a média
contadora = 0
soma = 0

nosso código executa sempre até o valor de temperatura for igual a -273
while temperatura != -273:
# a soma é dada com a adição da temperatura à variavel soma
soma += temperatura
# contamos a quantidade de valores coletados através da contadora
contadora += 1
# coletamos novamente a temperatura
temperatura = float(input('Insira a temperatura em Celsius: '))

media = soma / contadora

print(f'A média das temperaturas é: {media}')