-
Lenguaje
Java usando Scanner
-
Descripción
En una empresa se requiere calcular el salario semanal de cada uno de los n obreros que laboran en ella. El salario se obtiene de la sig. Forma: Si el obrero trabaja 48 horas o menos se le paga al valor normal por hora; Si trabaja más de 48 horas y menos de 60 horas, se le paga el valor normal por cada una de las primeras 48 horas y las restantes se pagan con un incremento del 35% sobre el valor de la hora normal; en caso contrario se le paga el valor normal por cada una de las primeras 48 horas, las siguientes 8 horas se le pagan con un incremento del 35% sobre el valor de la hora normal y las restantes se pagan con un incremento del 45% sobre el valor de la hora normal. Adicional a esto también se le debe decir al gerente cuanto pago en la nómina total y cuantos trabajadores trabajaron más de 60 horas, cuántos trabajaron más de 48 horas y menos de 61.
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
public class SalarioSemanalDeNObreros {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int i, n, trabajadores_60_o_mas, trabajadores_entre_48_y_61;
double horas_trabajadas, nomina_total, pago_por_hora, salario_semanal;
trabajadores_60_o_mas = 0;
trabajadores_entre_48_y_61 = 0;
nomina_total = 0;
System.out.print("Ingresa el valor de n: ");
n = in.nextInt();
in.nextLine();
for (i=1; i<=n; i++) {
System.out.print("PROCESO " + i);
System.out.print("Ingresa el valor de horas trabajadas: ");
horas_trabajadas = in.nextDouble();
in.nextLine();
System.out.print("Ingresa el valor de pago por hora: ");
pago_por_hora = in.nextDouble();
in.nextLine();
salario_semanal=pago_por_hora*horas_trabajadas;
if(horas_trabajadas>48)
salario_semanal=salario_semanal+pago_por_hora*(horas_trabajadas-48)*0.35;
if(horas_trabajadas>=60)
salario_semanal=salario_semanal+pago_por_hora*(horas_trabajadas-60)*0.1;
nomina_total=nomina_total+salario_semanal;
if(horas_trabajadas>=60)
trabajadores_60_o_mas=trabajadores_60_o_mas+1;
if(horas_trabajadas>48&&horas_trabajadas<61)
trabajadores_entre_48_y_61=trabajadores_entre_48_y_61+1;
System.out.println("Valor de salario semanal: " + salario_semanal);
System.out.println();
}
System.out.println("Valor de trabajadores 60 o mas: " + trabajadores_60_o_mas);
System.out.println("Valor de trabajadores entre 48 y 61: " + trabajadores_entre_48_y_61);
System.out.println("Valor de nomina total: " + nomina_total);
}
}