• Lenguaje

    Java usando Scanner

  • Descripción

    En una organización se tiene a los empleados agrupados por categoría, los de categoría A1 ganan $20.000, los de categoría B2, $15.000, los de categoría C3, $10.000 y los de categoría D4, $7.500. Se quiere un algoritmo que permita determinar cuánto debe pagarse a un empleado si se conoce el número de horas que trabajó durante el mes y la categoría a la que pertenece. Se sabe que a todos se les descuenta un 7.2% por concepto de salud, y si el salario total devengado (mensual) es menos de 1'000.000, se le da un subsidio del 15% sobre su salario mensual (sin descuentos).

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
import java.util.Scanner;

public class PagoPorHorasYCategoria {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int categoria;
        double concepto_de_salud, horas_trabajadas, pago, salario_mensual, salario_total_devengado;
        double subsidio;
        System.out.print("Ingresa el valor de horas trabajadas: ");
        horas_trabajadas = in.nextDouble();
        in.nextLine();
        System.out.println("Selecciona el valor de categoria.");
        System.out.println("\t1.- A1");
        System.out.println("\t2.- B2");
        System.out.println("\t3.- C3");
        System.out.println("\t4.- D4");
        System.out.print("\t: ");
        do {
            categoria = in.nextInt();
            in.nextLine();
            if (categoria<1||categoria>4)
                System.out.print("Valor incorrecto. Ingr\u00E9salo nuevamente.: ");
        } while (categoria<1||categoria>4);
        salario_mensual=0;
        if(categoria==1)
            salario_mensual=horas_trabajadas*20000;
        if(categoria==2)
            salario_mensual=horas_trabajadas*15000;
        if(categoria==3)
            salario_mensual=horas_trabajadas*10000;
        if(categoria==4)
            salario_mensual=horas_trabajadas*7500;
        concepto_de_salud=salario_mensual*0.072;
        salario_total_devengado=salario_mensual-concepto_de_salud;
        if(salario_total_devengado<1000000)
            subsidio=salario_mensual*0.15;
        else
            subsidio=0;
        pago=salario_total_devengado+subsidio;
        System.out.println("Valor de concepto de salud: " + concepto_de_salud);
        System.out.println("Valor de pago: " + pago);
        System.out.println("Valor de salario mensual: " + salario_mensual);
        System.out.println("Valor de salario total devengado: " + salario_total_devengado);
        System.out.println("Valor de subsidio: " + subsidio);
    }

}