Elabore um algoritmo que classifique um nadador pela idade nas seguintes categorias:
- infantil A = 5 - 7 anos
- infantil B = 8-10 anos
- juvenil A = 11-13 anos
- juvenil B = 14-17 anos
- adulto = maiores de 18 anos
Muito simples porém faz bom uso do if, elif e else.
Abraços.
Código
1 # Exercicio 12 da lista
2 # Definir categoria do nadador
3
4 #pega a idade do nadador
5 idade_nadador = input('Entre com a idade do nadador: ')
6
7 # Ifs para verificar entre qual faixa de idade se encontra o nadador
8 if idade_nadador <= 4:
9 print 'indefinido.'
10
11 elif 5 <= idade_nadador <= 7:
12 print 'infantil A'
13
14 elif 8 <= idade_nadador <= 10:
15 print 'infantil B'
16
17 elif 11 <= idade_nadador <= 13:
18 print 'Juvenil A'
19
20 elif 14 <= idade_nadador <=17:
21 print 'juvenil B'
22
23 else:
24 print 'adulto'
25
Usando o módulo bisect
1 from bisect import bisect
2
3 categs = [('indefinido' , 5),
4 ('infantil A', 8),
5 ('infantil B', 11),
6 ('juvenil A', 14),
7 ('juvenil B', 18),
8 ('adulto',200),
9 ]
10
11 idade_nadador = input('Entre com a idade do nadador: ')
12
13 valores = [i[1] for i in categs]
14 posicao = bisect(valores, int(idade_nadador))
15
16 print categs[posicao][0]
Mais sobre o módulo bisect em http://python.org/doc/2.5/lib/module-bisect.html
Volta para CookBook.