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

def calcular_tarifa(edad: int, distancia_km: float) -> float:
    if edad < 6:
        tarifa = 0.00
    elif edad <= 18:
        if distancia_km <= 20:
            tarifa = 1.50
        else:
            tarifa = 2.50
    else:
        if distancia_km <= 20:
            tarifa = 2.50
        else:
            tarifa = 4.00
            
    return tarifa

edad_usuario = int(input("Ingrese la edad del pasajero (en años): "))
distancia_usuario = float(input("Ingrese la distancia recorrida (en km): "))

if edad_usuario < 0 or distancia_usuario < 0:
    print("Error: La edad y la distancia deben ser valores positivos.")
else:
    costo_final = calcular_tarifa(edad_usuario, distancia_usuario)

    if costo_final == 0.00:
        print("¡Viaja gratis!")
    else:
        print(f"El valor total a pagar es: ${costo_final:.2f}")
1 respuesta

Hola Alexis, espero que estés bien

Tu código parece estar bien alineado con las especificaciones del ejercicio. Has implementado correctamente las condiciones para calcular la tarifa basada en la edad y la distancia. Aquí hay algunos puntos que podrías considerar para mejorar o verificar:

  1. Validación de entrada: Ya estás validando que la edad y la distancia sean positivas, lo cual es excelente. Asegúrate de que el programa maneje adecuadamente entradas no válidas (como letras o caracteres especiales) al momento de solicitar la edad y la distancia.

  2. Claridad del código: Tu código es claro y fácil de seguir. Sin embargo, podrías considerar agregar comentarios para explicar cada sección, especialmente si planeas compartir tu código o revisarlo en el futuro.

  3. Pruebas adicionales: Asegúrate de probar tu programa con diferentes valores de edad y distancia para verificar que las tarifas se calculen correctamente en todos los casos. Por ejemplo:

    • Edad: 5 años, Distancia: 10 km (Debería ser gratis)
    • Edad: 16 años, Distancia: 25 km (Debería ser $2.50)
    • Edad: 20 años, Distancia: 15 km (Debería ser $2.50)
    • Edad: 25 años, Distancia: 30 km (Debería ser $4.00)

Tu implementación parece cumplir con los requisitos del ejercicio. Si encuentras algún error específico al ejecutar el programa, no dudes en compartir más detalles.

Espero haber ayudado y buenos estudios!