Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Sistema de tarifas de transporte por edad y distancia

edad=int(input("Ingresa la edad del pasajero: "))
distancia=float(input("Ingresa la distancia por recorrer: "))
if edad<6:
print("Viaja gratis")
elif edad>6 and edad<=18:
if distancia<=20:
print("El coste es de '$1.50'")
else:
print("El coste es de '$2.50'")
else:
if distancia<=20:
print("El coste es de '$2.50'")
else:
print("El coste es de '$4.00'")

1 respuesta

¡Hola Piero, espero que estés bien!

Tu código parece estar casi correcto, pero hay un pequeño detalle que podrías ajustar para que funcione perfectamente de acuerdo con las reglas del sistema de tarifas que mencionaste. El problema está en la condición que verifica la edad entre 6 y 18 años. Actualmente, tu código está considerando a los niños de 6 años dentro de la categoría de "viaja gratis" debido a que utilizaste elif edad>6 and edad<=18:. Para incluir correctamente a los niños de 6 años en la categoría de pago, deberías cambiar el operador > por >=.

Aquí tienes el código corregido:

edad = int(input("Ingresa la edad del pasajero: "))
distancia = float(input("Ingresa la distancia por recorrer: "))

if edad < 6:
    print("Viaja gratis")
elif edad >= 6 and edad <= 18:
    if distancia <= 20:
        print("El coste es de '$1.50'")
    else:
        print("El coste es de '$2.50'")
else:
    if distancia <= 20:
        print("El coste es de '$2.50'")
    else:
        print("El coste es de '$4.00'")

Con este ajuste, los pasajeros de 6 años pagarán según la distancia recorrida, tal como se especifica en las reglas. Espero que esto resuelva tu duda.

¡Espero haber ayudado y buenos estudios!