-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEjercicio24.java
executable file
·68 lines (54 loc) · 2.12 KB
/
Ejercicio24.java
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
//Programa que genera la nómina de un empleado bien desglosada
public class Ejercicio24 {
public static void main (String[] args) {
int cargo, diasViaje, estadoCivil;
int irpf = 0;
double sueldoBruto, dietas;
double sueldoBase = 0;
double retencion = 0;
System.out.println("1 - Programador junior \n2 - Programador senior\n"
+ "3 - Jefe de proyecto \nIntroduzca el cargo del empleado (1-3):");
cargo = Integer.parseInt(System.console().readLine());
System.out.println("¿Cuantos dias ha estado de viaje visitando clientes?");
diasViaje = Integer.parseInt(System.console().readLine());
System.out.println("Introduzca su estado civil (1 - Soltero, 2 - Casado):");
estadoCivil = Integer.parseInt(System.console().readLine());
switch(cargo){
case 1: // Programador Junior
sueldoBase = 950;
break;
case 2: // Programador Senior
sueldoBase = 1200;
break;
case 3: // Jefe de Proyecto
sueldoBase = 1600;
break;
default:
System.out.println("No ha elegido correctamente el cargo que ocupa.");
}
dietas = diasViaje * 30;
sueldoBruto = sueldoBase + dietas;
switch(estadoCivil){
case 1: // Soltero
retencion = sueldoBruto * 0.25;
irpf = 25;
break;
case 2: // Casado
retencion = sueldoBruto * 0.2;
irpf = 20;
break;
default:
System.out.println("No ha elegido correctamente el Estado Civil.");
}
// Muestra la nomina desglosada
System.out.println("------------------------------------------");
System.out.printf("|Sueldo base \t\t\t %8.2f|\n", sueldoBase);
System.out.printf("|Dietas(%2d viajes) \t\t %6.2f|\n", diasViaje, dietas);
System.out.println("|----------------------------------------|");
System.out.printf("|Sueldo bruto \t\t\t %8.2f|\n", sueldoBruto);
System.out.printf("|Retencion IRPF (%2d%%) \t\t %6.2f|\n", irpf, retencion);
System.out.println("|----------------------------------------|");
System.out.printf("|Sueldo neto \t\t\t %8.2f|\n", sueldoBruto - retencion);
System.out.println("------------------------------------------");
}
}