programa en turbo pascal
Publicado por miguel (7 intervenciones) el 28/02/2020 05:02:45
Buenas amigos me gustaria que me pudiesen ayudar con este programa en pascal que debo crear y me esta dando bastantes quebraderos de cabeza
Se me pide crear un programa que permita ingresar el nombre y el salario de los trabajadores de una empresa. asi como tambien poder consultarlos.
ya este paso esta hecho como mostrare en el archivo que adjuntrare creado en notepad++
mi quebradero de cabeza es cuando se me pide realizar ciertos calculo en base al salario de los trabajadores, como por ejemplo utilidades, vacaciones, bonos, etc.
me gustaria que los revisaran para saber si estan correctos y como introducirlos en el codigo
esperando su pronta respuesta
muchas gracias
Se me pide crear un programa que permita ingresar el nombre y el salario de los trabajadores de una empresa. asi como tambien poder consultarlos.
ya este paso esta hecho como mostrare en el archivo que adjuntrare creado en notepad++
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
program ACME;
type
tipoPersona = record
nombre: string;
salario: integer;
end;
const
capacidad = 1000;
var
tra: array[1..capacidad] of tipoPersona;
cantidad: integer;
opcion: integer;
i: integer;
textoBuscar: string;
encontrado: boolean;
sal_anu, sal_anual, sal_men, sal_mensual: integer;
utili, utilidades, vaca, vacaciones: integer;
bono: real;
{Cuerpo del programa principal}
begin
cantidad := 0;
repeat
WriteLn('***BIENVENIDO A ACME***');
WriteLn;
WriteLn('1- Agregar Trabajador');
WriteLn('2- Todos los trabajadores');
WriteLn('3- Buscar a un trabajador');
WriteLn('0- Salir');
Write('Escoja una opcionn: ');
ReadLn(opcion);
WriteLn;
case opcion of
1: { Agregar trabajador }
if (cantidad < capacidad) then
begin
inc(cantidad);
WriteLn('Introduciendo al trabajador ', cantidad);
Write('Introduzca el nombre: ');
ReadLn(tra[cantidad].nombre);
Write('Introduzca Salario: ');
ReadLn(tra[cantidad].salario);
WriteLn;
end
else
WriteLn('Base de datos llena');
2: { Todos los trabajadores }
begin
if cantidad = 0 then
WriteLn('No hay datos')
else
for i := 1 to cantidad do
WriteLn(i, ' ', tra[i].nombre, tra[i] salario);
WriteLn;
end;
3: { Buscar a un trabajador }
begin
Write('Escriba el nombre del trabajador ');
ReadLn( textoBuscar );
encontrado := false;
for i := 1 to cantidad do
if pos (textoBuscar, tra[i].nombre) > 0 then
begin
encontrado := true;
WriteLn( i,' - Nombre: ', tra[i].nombre,
', Salario: ', tra[i].salario;
end;
if not encontrado then
WriteLn('No se ha encontrado.');
WriteLn;
end;
0: { salir }
begin
WriteLn;
WriteLn('Saliendo...');
WriteLn;
end;
else
begin
WriteLn;
WriteLn('Opción incorrecta!');
WriteLn;
end;
end; { Fin de "case" }
until opcion = 0;
end.
mi quebradero de cabeza es cuando se me pide realizar ciertos calculo en base al salario de los trabajadores, como por ejemplo utilidades, vacaciones, bonos, etc.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
begin
for i:=0 to cantidad do
if tra[i].salario > 15 then
tra[i].bono:=tra[i].salario*0.1;
utilidades:=tra[i].salario*2;
vacaciones:=tra[i].salario;
tra[i].sal_mensual:=tra[i].salario+tra[i]bono;
tra[i].sal_anual:=tra[i].sal_mensual*12+vacaciones+utilidades;
else
cesta:=20;
vaca:=tra[i].salario;
utili:=tra[i].salario*4;
tra[i].sal_men:=tra[i].salario+cesta;
tra[i].sal_anu:=tra[i].sal_men*12+vaca;
end;
me gustaria que los revisaran para saber si estan correctos y como introducirlos en el codigo
esperando su pronta respuesta
muchas gracias
Valora esta pregunta


0