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] Faça como eu fiz: calculando a idade

def calcIdade(anoNasc):
    from datetime import date
    anoCorrente = date.today().year
    idade = anoCorrente - anoNasc
    
    return f'A idade é {idade} anos.'

anoNasc=int(input('Digite o ano em que você nasceu: '))
resultado = calcIdade(anoNasc)
print(resultado)
1 resposta
solução!

Oi, Evandro. Tudo certo?

Seu código para calcular a idade está correto e funcional, cumprindo o objetivo do exercício. A função calcIdade recebe o ano de nascimento, obtém o ano corrente usando a biblioteca datetime e realiza a subtração para calcular a idade, retornando uma mensagem formatada que informa o resultado. A forma como você organiza o código, encapsulando a lógica dentro da função, facilita a reutilização e deixa o programa mais limpo.

Uma dica para aprimorar essa função seria separar a responsabilidade da função, de modo que ela apenas retorne a idade como um número inteiro, e a formatação da mensagem fique a cargo do código que chama a função. Isso pode melhorar a flexibilidade do seu código em contextos nos quais a idade precise ser usada para outros cálculos, como verificar maioridade ou calcular tempo para aposentadoria.

Você já pensou em como essa função pode ser adaptada para considerar também o mês e o dia de nascimento, oferecendo uma idade mais precisa, e não apenas em anos? Ou em como trataria entradas inválidas, como anos futuros? Refletir sobre esses aspectos pode tornar seu código ainda mais robusto.

Parabéns pelo esforço e contribuição. O fórum está à disposição para ajudar no que precisar.

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