Lenguaje C
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
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int categoria;
    float concepto_de_salud, horas_trabajadas, pago, salario_mensual, salario_total_devengado, subsidio;
    printf ("Ingrese el valor de horas trabajadas: ");
    scanf ("%f", &horas_trabajadas);
    printf ("Seleccione el valor de categoria.\n");
    printf ("\t1.- A1\n");
    printf ("\t2.- B2\n");
    printf ("\t3.- C3\n");
    printf ("\t4.- D4\n");
    printf ("\t: ");
    do {
        scanf ("%d", &categoria);
        if (categoria<1||categoria>4)
            printf ("Valor incorrecto. Ingr\202selo 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;
    subsidio=salario_total_devengado<1000000?salario_mensual*0.15:0;
    pago=salario_total_devengado+subsidio;
    printf ("Valor de concepto de salud: %g\n", concepto_de_salud);
    printf ("Valor de pago: %g\n", pago);
    printf ("Valor de salario mensual: %g\n", salario_mensual);
    printf ("Valor de salario total devengado: %g\n", salario_total_devengado);
    printf ("Valor de subsidio: %g\n", subsidio);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}