• Lenguaje

    C

  • Descripción

    Dado como datos la categoría, el tiempo de servicio y el sueldo de un colaborador determine su nueva remuneración considerando el aumento correspondiente según la siguiente tabla:
    Categoría | Tiempo de servicio Aumento
    Funcionario | Menor o igual a 5 años 10% - Mayor a 5 años 25%
    Empleado | Menor o igual a 10 años 8% - Mayor a 10 años 15%
    Obrero | Menor o igual a 10 años 5% - Mayor a 10 años 12%

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

int main (void)
{
    int categoria;
    float aumento, nueva_remuneracion, sueldo, tiempo_de_servicio;
    printf ("Ingresa el valor de sueldo: ");
    scanf ("%f", &sueldo);
    (void) getchar ();
    printf ("Ingresa el valor de tiempo de servicio: ");
    scanf ("%f", &tiempo_de_servicio);
    (void) getchar ();
    printf ("Selecciona el valor de categoria.\n");
    printf ("\t1.- Funcionario\n");
    printf ("\t2.- Empleado\n");
    printf ("\t3.- Obrero\n");
    printf ("\t: ");
    do {
        scanf ("%d", &categoria);
        (void) getchar ();
        if (categoria<1||categoria>3)
            printf ("Valor incorrecto. Ingr\202salo nuevamente.: ");
    } while (categoria<1||categoria>3);
    aumento=0;
    if(categoria==1&&tiempo_de_servicio<=5)
        aumento=sueldo*0.1;
    if(categoria==1&&tiempo_de_servicio>5)
        aumento=sueldo*0.25;
    if(categoria==2&&tiempo_de_servicio<=10)
        aumento=sueldo*0.08;
    if(categoria==2&&tiempo_de_servicio>10)
        aumento=sueldo*0.15;
    if(categoria==3&&tiempo_de_servicio<=10)
        aumento=sueldo*0.05;
    if(categoria==3&&tiempo_de_servicio>10)
        aumento=sueldo*0.12;
    nueva_remuneracion=sueldo+aumento;
    printf ("Valor de aumento: %g\n", aumento);
    printf ("Valor de nueva remuneracion: %g\n", nueva_remuneracion);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}