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

Número inteiro/decimal

Fiz um exercício para validar se um número era inteiro ou decimal.

O problema é que quando eu coloco um número menor que 1.5 ele considera como inteiro. Alguém saberia me informar por que isto ocorre?

numero = float(input('Digite um número: '))

if(round(numero) == True):
    print(f'{int(numero)} é um número inteiro!')
else:
    print(f'{numero} é um número decimal!')
3 respostas

Peguei uma colinha e vi que o que estava fazendo errado:

A comparação do IF deve ser numero == round(numero).

numero = float(input('Digite um número: '))

if(numero == round(numero)):
    print(f'{int(numero)} é um número inteiro!')
else:
    print(f'{numero} é um número decimal!')
solução!

Oi Alexandre, como vai?

Que bom que conseguiu resolver =) Da primeira forma que fez não obteve o valor esperado porque o round não retorna um booleano(True ou False), mas sim números diversos. Já da segunda forma, você está comparando um número com outro número ou seja, dois tipos iguais, por isso obtém o retorno esperado.

Qualquer dúvida estou por aqui, tá bom?

Abraços!

Obrigado Nádia.