1
resposta

Estou com dúvida na atividade 2!

Olá com o seguinte código:

idade =  int(input('Digite a sua idade:'))

if idade > 0 < 12:
    print('Você é uma criança')
elif idade > 13 < 18:
    print('Você é um adolescente')
elif idade > 18:
    print('Você é um adulto')

Toda idade que eu digito, aparece no terminal "Você é um criança". O que falta fazer para que o meu código funcione corretamente, isto é, aparecendo as outras mensagens caso a idade for maior que 12?

1 resposta

Oii, Luiz! Tudo bem?

Essa é uma dúvida excelente e acontece muito porque a lógica que usamos na cabeça ("idade maior que 0 e menor que 12") precisa ser escrita de um jeitinho específico para o Python entender corretamente.

O que está acontecendo:

Quando você escreve if idade > 0 < 12, o Python interpreta isso como uma comparação encadeada, mas de uma forma um pouco diferente da matemática tradicional. Ele avalia:

  1. A idade é maior que 0? (Se você digitar 20, a resposta é Sim).
  2. O número 0 é menor que 12? (A resposta é sempre Sim).

Como as duas coisas são verdadeiras, ele entra no primeiro if e para por ali, ignorando o resto. Por isso, qualquer número positivo que você digita acaba caindo como "Criança".

Como resolver:

Pra fixar, precisamos deixar a variável idade no meio da comparação (para dizer que ela está entre os valores) ou usar o operador and. Além disso, fiz um pequeno ajuste para incluir o número 12 e o 18, que ficariam de fora na sua lógica original (se a pessoa tivesse exatamente 12 anos, o código não saberia o que fazer).

Veja como fica o código ajustado:

idade = int(input('Digite a sua idade: '))

# Aqui dizemos: se 0 for menor que a idade E a idade for menor ou igual a 12
if 0 < idade <= 12:
    print('Você é uma criança')

# Aqui: se 12 for menor que a idade E a idade for menor que 18
elif 12 < idade < 18:
    print('Você é um adolescente')

# Aqui pegamos 18 ou mais
elif idade >= 18:
    print('Você é um adulto')

Tente rodar com essas alterações e veja se agora ele classifica certinho todas as idades. Qualquer coisa, é só chamar!

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