Ayuda con Python MUY basico

Iniciado por 15-19, 26 Abril 2017, 16:55 PM

0 Miembros y 1 Visitante están viendo este tema.

15-19

Hola, estoy empezando a programar en python y tengo un problemilla.
Quiero que un pequeño programa me diga en que franja de edad estoy.
Código (python) [Seleccionar]
# -*- coding: utf-8 -*-
def main():
   print("Introduzca su Edad")
   edad=int(input())
   if edad >=18:
    print("Eres mayor de 18")
   elif edad > 70:
    print("Eres adulto")
   else:
    print("Eres menor de edad")
main()


El problema esta es que solo me clasifica mayores y menores de edad. Pero si pongo que tengo 75 años, no me lo clasifica como "adulto", sino como "Mayor de 18 años".
Como puedo solucionar esto?
Gracias
Wyrd bid ful araed

Eleкtro

#1
Cita de: martin61814 en 26 Abril 2017, 16:55 PMEl problema esta es que solo me clasifica mayores y menores de edad. Pero si pongo que tengo 75 años, no me lo clasifica como "adulto", sino como "Mayor de 18 años".
Como puedo solucionar esto?

Tu código hace lo siguiente:

Si edad es igual o mayor que 18:
   -Hacer esto
En caso contrario, si edad es menor que 18 y mayor que 70
  -Hacer esto otro
En caso contrario:
  -Hacer esto último


Como puedes ver, la segunda condición es un conflicto que nunca se podrá dar; al evaluar "70" siempre dará resultado positivo la primera condicional.

Los números/edades más altas se deben comprobar primero, tal que así:

Si edad es mayor que 70:
   -Hacer esto
En caso contrario, si edad es igual o mayor que 18:
  -Hacer esto otro
En caso contrario:
  -Hacer esto último


Saludos








15-19

Wyrd bid ful araed