Saltar al contenido
EjemplosEnglishEspacio →

Tarifa del estacionamiento

Cobra cada hora empezada, con un tope máximo por día.

Nivel
Intermedio
Conceptos:
Entrada y salida
Si
Matemáticas
Abrir en Codoritmo

Ejecuta, modifica y depura este ejemplo en el navegador.

Lo que aprenderás

Con Trunc y MOD separas las horas completas de los minutos sobrantes. Varios Si seguidos aplican la tarifa y el tope diario.

Código

parking.psc · 26 líneas
Algoritmo TarifaEstacionamiento    Definir minutos, horas Como Entero    Definir costo Como Real    Escribir "¿Cuántos minutos estuvo el auto?"    Leer minutos    // Cada hora empezada se cobra completa    horas <- Trunc(minutos / 60)    Si minutos MOD 60 > 0 Entonces        horas <- horas + 1    FinSi    Si horas = 0 Entonces        costo <- 0    SiNo        Si horas = 1 Entonces            costo <- 20        SiNo            costo <- 20 + (horas - 1) * 15        FinSi    FinSi    Si costo > 120 Entonces        costo <- 120        Escribir "Se aplicó la tarifa máxima diaria."    FinSi    Escribir "Horas cobradas: ", horas    Escribir "Total a pagar: $", costoFinAlgoritmo

Diagrama de flujo

Cada bloque del diagrama corresponde a una instrucción del código.

Algoritmo TarifaEstacionamientoSíNoSíNoSíNoSíNoAlgoritmo TarifaEstacionamientoAlgoritmo TarifaEstacionamientoDefinir minutos, horas Como EnteroDefinir minutos, horas ComoEnteroDefinir costo Como RealDefinir costo Como RealEscribir "¿Cuántos minutos estuvo el auto?"Escribir "¿Cuántos minutosestuvo el auto?"Leer minutosLeer minutoshoras <- Trunc(minutos / 60)horas <- Trunc(minutos / 60)Si minutos MOD 60 > 0 Entoncesminutos MOD 60 > 0horas <- horas + 1horas <- horas + 1Si horas = 0 Entonceshoras = 0costo <- 0costo <- 0Si horas = 1 Entonceshoras = 1costo <- 20costo <- 20costo <- 20 + (horas - 1) * 15costo <- 20 + (horas - 1) * 15Si costo > 120 Entoncescosto > 120costo <- 120costo <- 120Escribir "Se aplicó la tarifa máxima diaria."Escribir "Se aplicó la tarifamáxima diaria."Escribir "Horas cobradas: ", horasEscribir "Horas cobradas: ",horasEscribir "Total a pagar: $", costoEscribir "Total a pagar: $",costoFinAlgoritmoFinAlgoritmo

Ejemplo de ejecución

Esto muestra el programa al ejecutarlo. Las respuestas escritas por el usuario aparecen resaltadas.

¿Cuántos minutos estuvo el auto?Respuesta del usuario: 135Horas cobradas: 3Total a pagar: $50

Desafío

Agrega una tolerancia: si el auto estuvo 15 minutos o menos, no paga nada.

Ver pista

Revisa minutos <= 15 al principio y deja el costo en 0 en ese caso.

Abrir en Codoritmo