remisero
un remisero te lleva de paseo por el conurbaunknown
java
5 years ago
2.8 kB
13
Indexable
package codigo;
import java.util.Scanner;
public class EjRemis {
private static Scanner input = new Scanner(System.in);
public static void main(String[] args) {
// es solo para 1 viaje
// hay que poner las constantes para el exam
String nombre = "";
String gama = "";
final String ALTA_GAMA = "A";
final String GAMA_MEDIA = "M";
final String ECONOMICO = "E";
final int DESG_GAMA_ALTA = 6;
final int DESG_GAMA_MEDIA = 4;
final int DESG_ECONOMICO = 2;
// porcentajes de desgaste
int RANGO_ALTO = 7;
int RANGO_MEDIO = 5;
int RANGO_BAJO = 3;
double porcDesg = 0;
int kmViaje;
int minutosEspera = 0;
double importe = 0;
int contViajes = 0;
double acumImportesViajes = 0;
double promedio;
// ingresar nombre chofer
System.out.println("Ingrese el nombre");
nombre = input.nextLine();
do {
System.out.println("Ingrese la gama | `A` alta gama, `M` gama media, `E` economico ");
gama = input.nextLine().toUpperCase();
} while( !gama.equals(ECONOMICO) && !gama.equals(GAMA_MEDIA) && !gama.equals(ALTA_GAMA) );
switch(gama) {
case ECONOMICO: porcDesg = (double)DESG_ECONOMICO/100;
break;
case GAMA_MEDIA: porcDesg = (double)DESG_GAMA_MEDIA/100;
break;
case ALTA_GAMA: porcDesg = (double)DESG_GAMA_ALTA/100;
break;
}
System.out.println(porcDesg);
System.out.println(gama);
do {
System.out.println("Ingrese los kilometros");
kmViaje = Integer.parseInt( input.nextLine() );
} while( kmViaje < 0 && kmViaje>500);
// not fin de viajes
while(kmViaje > 0) {
contViajes++;
// pido minutos
do {
System.out.println("Ingrese el tiempo de espera minutos");
minutosEspera = Integer.parseInt( input.nextLine() );
} while( minutosEspera < 0 || minutosEspera >120);
// rango de viajes
if (kmViaje > 1 && kmViaje <= 50) {
importe = RANGO_ALTO*kmViaje*(1+porcDesg) + 2*minutosEspera;
} else {
if(kmViaje > 50 && kmViaje < 120) {
importe = RANGO_MEDIO*kmViaje*(1+porcDesg) + 2*minutosEspera;
} else {
if(kmViaje > 121 && kmViaje < 500) {
importe = RANGO_BAJO*kmViaje*(1+porcDesg) + 2*minutosEspera;
}
}
}
acumImportesViajes += importe;
do {
System.out.println("Ingrese los kilometros");
kmViaje = Integer.parseInt( input.nextLine() );
} while( kmViaje < 0 && kmViaje>500);
}
if( contViajes > 0) {
promedio = acumImportesViajes/contViajes;
System.out.println("El promedio de costo por viaje es: " + promedio);
System.out.println("El nombre del chofer es es: " + nombre);
System.out.println("El monto total es $ : " + acumImportesViajes);
} else {
System.out.println("No hubo viajes");
}
}
}
Editor is loading...