Ir ao conteúdo

Posts recomendados

Postado

Boa tarde,

 

Fiz um codigo abaixo que pergunta o nascimento e calcula a idade e mostra a categoria de acordo com a idade, e uma atividade;

 

import datetime

nascimento = int(input('Digite seu ano de nascimento:\n'))
hoje = datetime.datetime.today()
ano = hoje.year
idade = ano-nascimento

if idade <= 9:
    print('Sua categoria é \033[1:31mMirim\033[m.')
elif idade <= 14:
    print('Sua categoria é \033[1:33mInfantil\033[m.')
elif idade <= 19:
    print('Sua categoria é \033[1:32mJunior\033[m.')
elif idade == 20:
    print('Sua categoria é \033[1:34mSênior\033[m.')
else:
    print('Sua categoria é \033[1:35mMaster\033[m.')

 

Esse funcionou,porém antes eu fiz o inverso eu comecei do Maior para o Menor e o codigo parava de ler no Junior, um exemplo de como estava antes;

import datetime

nascimento = int(input('Digite seu ano de nascimento:\n'))
hoje = datetime.datetime.today()
ano = hoje.year
idade = ano-nascimento

if idade > 20:
    print('Master')
elif idade == 20:
    print('Sênior')
elif idade <= 19:
    print('Junior')
elif idade <= 14:
    print('Infantil')
elif idade <= 9:
    print('Mirim')

 

Por que isso acontecia?

 

Questão:Escreva um programa que leia o ano de nascimento de um atleta e mostre sua categoria de acordo com a idade: Até 9 anos: Mirim Até 14 anos: Infantil Até 19 anos: Junior Até 20 anos: Senior Acima: Master 

Postado
23 minutos atrás, FudoYusei disse:

Por que isso acontecia?

 

Porque a condição idade <= 19 é verdadeira para qualquer valor menor que 20, então a condicional termina aí quando é satisfeita. Seria diferente do menor para o maior como fez na outra estrutura condicional, já que para chegar na idade <= 19 antes teria que testar 9 e 14 nessa ordem.

Postado

@FudoYusei Tente seguir da forma mais simples e lógica que é como fez no primeiro código. Assim os testes da idade pode ser com o mesmo operador: menor ou igual. Não vejo sentido tentar da outra forma.

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!