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

[Sugerencia] Tarifas de transporte

Les presento mi código, en el quise hacerlo más simplificado, donde solo anote la edad y el kilometraje recorrido y por ende nos otorgue la tarifa requerida, esto es, solo alimentando dos datos:

edad_pasajero= int(input("Ingresa la edad del pasajero "))
distancia_recorrida=float(input("ingresa los km recorridos "))
boleto1=1.50
boleto2=2.50
boleto3=4.00

if edad_pasajero <6:
print ("El pasajero viaja gratis")
elif edad_pasajero >=6 and edad_pasajero <=18 and distancia_recorrida <=20:
print ("El costo del boleto es ", boleto1 )

elif edad_pasajero >=6 and edad_pasajero <=18 and distancia_recorrida >20:
print ("El costo del boleto es ", boleto2 )

if edad_pasajero >18 and distancia_recorrida <=20:
print ("El costo del boleto es ", boleto2)
if edad_pasajero >18 and distancia_recorrida >20:
print ("El costo del boleto es ", boleto3)

1 respuesta

Hola Yara, espero que estés bien

Tu código se ve bastante bien y es una buena forma de simplificar la determinación de tarifas de transporte basadas en la edad y la distancia. Sin embargo, hay algunas mejoras que podrías considerar para hacerlo más eficiente y claro.

  1. Uso de elif: Puedes usar elif en lugar de if para evitar que se evalúen condiciones adicionales una vez que se ha encontrado una condición verdadera. Esto también ayuda a que el código sea más legible.

  2. Condiciones agrupadas: Puedes agrupar las condiciones para simplificar el flujo del código.

Aquí tienes un ejemplo de cómo podrías reestructurar tu código:

edad_pasajero = int(input("Ingresa la edad del pasajero "))
distancia_recorrida = float(input("Ingresa los km recorridos "))
boleto1 = 1.50
boleto2 = 2.50
boleto3 = 4.00

if edad_pasajero < 6:
    print("El pasajero viaja gratis")
elif edad_pasajero <= 18:
    if distancia_recorrida <= 20:
        print("El costo del boleto es ", boleto1)
    else:
        print("El costo del boleto es ", boleto2)
else:
    if distancia_recorrida <= 20:
        print("El costo del boleto es ", boleto2)
    else:
        print("El costo del boleto es ", boleto3)

Con esta estructura, el código es más claro y evita evaluaciones innecesarias. Espero que estas sugerencias te sean de ayuda. ¡Bons estudios!