ej_parcial_con_funciones
ej_parcial_con_funcionesunknown
java
4 years ago
3.0 kB
5
Indexable
// parcial THP YT B Santiago Santamaria package codigo; import java.util.Scanner; public class Parcial { private static Scanner input = new Scanner(System.in); private final static String CAMIONETA = "C"; private final static String AUTO = "A"; private final static String MOTO = "M"; private final static String FIN_INGRESO = "FIN"; private static String vehiculo; public static int tarifa = 0; public static int hora; public static String patente; public static boolean horaPico; public static int totalAbonado = 0; public static double contVehiculos = 0; public static double contAutos = 0; private final static int TARIFA_MOTO = 50; private final static int TARIFA_AUTO = 100; private final static int TARIFA_CAMIONETA = 150; private final static int INI_HPICO = 9; private final static int FIN_HPICO = 18; public static void main(String[] args) { IngresarValidarPatente(); // proceso vehiculo while (!patente.equals(FIN_INGRESO)) { IngresarValidarVehiculo(); asignarTarifa(); contarVehiculo(); ingresarValidarHora(); evaluarTarifaHora(); reportarPeaje(); IngresarValidarPatente(); } reportarResultados(); } // fin MAIN public static void IngresarValidarPatente() { do { System.out.println("Ingrese la patente del vehiculo o FIN para terminar"); patente = input.nextLine().toUpperCase(); } while(patente.isEmpty()); } public static void IngresarValidarVehiculo() { do { System.out.println("Ingrese el tipo de vehiculo | M - Moto, A - Automovil, C o FIN para terminar"); vehiculo = input.nextLine().toUpperCase(); } while( !vehiculo.equals(MOTO) && !vehiculo.equals(AUTO) && !vehiculo.equals(CAMIONETA)); } public static void asignarTarifa() { // case tarifas switch(vehiculo) { case MOTO: tarifa = TARIFA_MOTO; break; case AUTO: tarifa = TARIFA_AUTO; break; case CAMIONETA: tarifa = TARIFA_CAMIONETA; break; } } public static void ingresarValidarHora() { do { System.out.println("Ingrese la HORA"); hora = Integer.parseInt( input.nextLine() ); } while( hora < 0 || hora > 23); } public static void contarVehiculo() { contVehiculos++; if (vehiculo.equals(AUTO)) { contAutos++; } } public static void evaluarTarifaHora() { horaPico = hora >= INI_HPICO && hora <= FIN_HPICO; if(horaPico) { tarifa = 2*tarifa; } totalAbonado += tarifa; } public static void reportarResultados() { if( contVehiculos > 0) { System.out.println("El total recaudado por la casilla fue: " + totalAbonado); System.out.println("El porcentaje de vehiculos de tipo Automovil fue : " + contAutos*100/contVehiculos); } else { System.out.println("No se ingreso ningun vehiculo"); } } public static void reportarPeaje() { System.out.println("El peaje del vehiculo de patente " + patente + " es : " + tarifa); } } // end CLASS
Editor is loading...