Java - Buenos días, podrían ayudarme con este ejercicio de Java? POO

 
Vista:

Buenos días, podrían ayudarme con este ejercicio de Java? POO

Publicado por Roberto Perez Ichiga (4 intervenciones) el 24/07/2021 16:12:50
Buenos días Conocedores y Maestros de Programación
Tengo este ejercicio en el cual he intentado desarrollarlo, pero ando estancado, no se como empezarlo y el tiempo que me queda es corto, podrían ayudarme con este problema de Java POO? les agradezco de antemano.

De un servicio de taxi se requiere calcular el valor a cancelar teniendo en cuenta las
siguientes observaciones:
Todo servicio tiene un número de kilómetros recorridos. Si el número de kilómetros
no supera los tres kilómetros, el valor a pagar por los kilómetros recorridos es de
$4500. Si el número de kilómetros es superior a tres kilómetros el valor a pagar por
los kilómetros recorridos es de $1500 por cada kilómetro.
El servicio se puede prestar en un día ordinario o en un día festivo. En caso de que
el servicio se preste en un día festivo se paga el 70% del valor de los kilómetros
recorridos. Si el tipo de día es ordinario este valor es cero.
El servicio puede ser diurno o nocturno. Esto depende de la hora en que se presta
el servicio, entre las 18 y las 24 horas el servicio se considera nocturno y se debe
pagar por valor de recargo nocturno el 50% del valor de los kilómetros recorridos.

Exigencias en la lógica del proyecto:
-En la clase solo existen atributos para los datos de entrada.
- Un método que calcule el valor de los kilómetros recorridos.
-Un método que calcule el valor del tipo de día dependiendo si es ordinario o festivo.
-Un método que calcule el valor a pagar por recargo nocturno.
- Un método que calcule el neto a pagar (sumatoria de todos los valores calculados)
y presenta el valor de kilómetros, del festivo, del recargo nocturno y del neto a pagar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Buenos días, podrían ayudarme con este ejercicio de Java? POO

Publicado por Kabuto (1381 intervenciones) el 25/07/2021 01:08:26
Estos serían los atributos de entrada:
1
2
3
4
5
6
public class ValorTaxi {
 
	//Datos entrada
	private static int kmRecorridos;
	private static boolean esFestivo;
	private static boolean esNocturno;

Este el método que calcula el valor de la distancia recorrida:
1
2
3
4
5
6
private static int valorKms() {
		if (kmRecorridos <= 3)
			return 4500;
		else
			return 1500 * kmRecorridos;
	}

Este calcula el posible recargo por ser festivo:
1
2
3
4
5
6
private static int recargoFestivo() {
		if (esFestivo)
			return valorKms() * 70 / 100;
		else
			return 0;
	}

Este el posible recargo por nocturnidad:
1
2
3
4
5
6
private static int recargoNocturno() {
		if (esNocturno)
			return valorKms() * 50 / 100;
		else
			return 0;
	}

Y este suma todos los valores que conforman el neto a pagar:
1
2
3
private static int valorNeto() {
		return valorKms() + recargoFestivo() + recargoNocturno();
	}

Si todo esto lo unimos en un programa donde se piden por teclado los tres valores de entrada y luego se realizan los cálculos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
public class ValorTaxi {
 
	//Datos entrada
	private static int kmRecorridos;
	private static boolean esFestivo;
	private static boolean esNocturno;
 
	public static void main(String[] args) {
		Scanner teclado = new Scanner(System.in);
 
		System.out.print("Kilometros recorridos: ");
		kmRecorridos = Integer.parseInt(teclado.nextLine());
		System.out.print("¿Es un dia festivo?(si/no): ");
		esFestivo = teclado.nextLine().equalsIgnoreCase("si");
		System.out.print("¿Tramo nocturno?(si/no): ");
		esNocturno = teclado.nextLine().equalsIgnoreCase("si");
		teclado.close();
 
		System.out.println("\n\tCALCULO DE FACTURACION\n");
 
		System.out.println("Valor de los km recorridos: " + valorKms());
		System.out.println("Recargo por festivo: " + recargoFestivo());
		System.out.println("Recargo por tramo nocturno: " + recargoNocturno());
		System.out.println("Valor NETO a pagar: " + valorNeto());
 
	}
 
	private static int valorKms() {
		if (kmRecorridos <= 3)
			return 4500;
		else
			return 1500 * kmRecorridos;
	}
 
	private static int recargoFestivo() {
		if (esFestivo)
			return valorKms() * 70 / 100;
		else
			return 0;
	}
 
	private static int recargoNocturno() {
		if (esNocturno)
			return valorKms() * 50 / 100;
		else
			return 0;
	}
 
	private static int valorNeto() {
		return valorKms() + recargoFestivo() + recargoNocturno();
	}
 
}

En pantalla tenemos este resultado:
1
2
3
4
5
6
7
8
9
10
Kilometros recorridos: 12
¿Es un dia festivo?(si/no): no
¿Tramo nocturno?(si/no): si
 
	CALCULO DE FACTURACION
 
Valor de los km recorridos: 18000
Recargo por festivo: 0
Recargo por tramo nocturno: 9000
Valor NETO a pagar: 27000
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Buenos días, podrían ayudarme con este ejercicio de Java? POO

Publicado por Roberto Perez Ichiga (4 intervenciones) el 25/07/2021 04:10:38
Muchas gracias amigo, lo leeré detenidamente para poder aprender y le agradezco por salvarme la vida, muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar