• Lenguaje

    Pascal

  • Descripción

    Ingresa el nombre del trabajador, la cantidad de horas trabajadas, la categoría del trabajador y el valor de la hora normal.
    Muestre la cantidad de horas extras y el pago del trabajador.
    Tenga en cuenta que el valor de la hora extra es un porcentaje por la categoría, el cual, es más que el valor de la hora normal y que el trabajo es de lunes a sábado.
    Suponiendo que se trabaja 5 horas diarias.

    Categoría | Porcentaje
    Obrero | 10
    Administrativo | 30
    Especialistas | 40
    Supervisor | 45
    Gerencial | 50

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
program PagoPorHorasExtraYCategoria;
uses crt;

var categoria : integer;
var hora_normal, horas_extra, horas_trabajadas, pago, porcentaje : real;
var nombre_del_trabajador : string;
begin
    write ('Ingresa el nombre del trabajador: ');
    readln (nombre_del_trabajador);
    write ('Ingresa el valor de hora normal: ');
    readln (hora_normal);
    write ('Ingresa el valor de horas trabajadas: ');
    readln (horas_trabajadas);
    porcentaje := 0;
    writeln ('Selecciona el valor de categoria.');
    writeln ('    1.- Obrero');
    writeln ('    2.- Administrativo');
    writeln ('    3.- Especialistas');
    writeln ('    4.- Supervisor');
    writeln ('    5.- Gerencial');
    write ('    : ');
    repeat
        readln (categoria);
        if (categoria<1) or (categoria>5) then
            write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
    until (categoria>=1) and (categoria<=5);
    if horas_trabajadas>30 then
        begin
            horas_extra := horas_trabajadas-30;
        end
    else
        begin
            horas_extra := 0;
        end;
    if categoria=1 then
        begin
            porcentaje := 10;
        end;
    if categoria=2 then
        begin
            porcentaje := 30;
        end;
    if categoria=3 then
        begin
            porcentaje := 40;
        end;
    if categoria=4 then
        begin
            porcentaje := 45;
        end;
    if categoria=5 then
        begin
            porcentaje := 50;
        end;
    pago := (horas_trabajadas+horas_extra*porcentaje/100)*hora_normal;
    writeln ('Nombre del trabajador: ', nombre_del_trabajador);
    writeln ('Valor de horas extra: ', horas_extra:0:6);
    writeln ('Valor de pago: ', pago:0:6);
    writeln ('Valor de porcentaje: ', porcentaje:0:6);
    writeln;
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.