Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Gostaria de saber se posso melhorar algo nesse código

def calcular_imc(peso, altura):
    return peso / (altura ** 2)
def texto_do_resultado(texto_do_calculo):
    print(f'Seu IMC é de {imc:.2f}, você está {texto_do_calculo}.')

try:
    peso_da_pessoa = float(input('Digite o seu peso em KG: '))
    altura_da_pessoa = float(input('Digite a sua altura em metros: '))
    imc = calcular_imc(peso_da_pessoa, altura_da_pessoa)
    if imc < 18.5:
        texto_do_resultado('abaixo do peso ideal')
    elif imc >= 18.5 and imc < 25:
        texto_do_resultado('no peso ideal')
    else:
        texto_do_resultado('acima do peso ideal')
except: 
    print('Erros, digite apenas números.')

Apenas quero saber se posso melhorar algo, como adicionar algo ou remover algo que não sirva

1 resposta
solução!

Olá, Pedro! Como vai?

Parabéns pela resolução da atividade!

Uma melhoria possível é simplificar a condição elif imc >= 18.5 and imc < 25 usando apenas operadores encadeados. Assim:

elif 18.5 <= imc < 25:
    texto_do_resultado('no peso ideal')

Isso deixa o código mais limpo e fácil de ler.

Espero ter ajudado e fico à disposição se precisar.

Abraço e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado