Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Ejercicio1p2;
- const
- valorAlto=9999;
- type
- empleados=record
- codemp:integer;
- nombre:String;
- monto:real;
- end;
- nuevo=record
- codEmp:integer;
- nombre:String;
- total:real;
- end;
- archivo=file of empleados;
- archivoN=file of nuevo;
- procedure leerEmpleados(var e:empleados);
- begin
- writeln('Inserte un codigo de empleado');
- readln(e.codemp);
- if(e.codemp<>999)then begin
- writeln('Inserte un nombre para el empleado');
- readln(e.nombre);
- writeln('Inserte un monto para el empleado');
- readln(e.monto);
- end;
- end;
- procedure generarArchivo(var arch:archivo);
- var
- e:empleados;
- begin
- rewrite(arch);
- leerEmpleados(e);
- while(e.codemp<>999)do begin
- write(arch,e);
- leerEmpleados(e);
- end;
- close(arch);
- end;
- procedure leer(var arch:archivo;var dato:empleados );
- var
- e:empleados;
- begin
- if(not eof(arch))then
- read(arch,e)
- else
- dato.codEmp:=valorAlto;
- end;
- procedure nuevoArchivo(var arch:archivo;var archN:archivoN);
- var
- e:empleados;
- aux:integer;
- n:nuevo;
- total:real;
- nu:nuevo;
- dato:empleados;
- begin
- rewrite(archN);
- reset (arch);
- leer(arch,e);
- while(e.codEmp<>valorAlto)do begin
- total:=0;
- aux:=e.codEmp;
- while(aux=e.codEmp)do begin
- total:=total+e.codEmp;
- leer(arch,e);
- end;
- nu.codEmp:=e.codEmp;
- nu.nombre:=e.nombre;
- nu.total:=total;
- write(archN,nu);
- end;
- close(archN);
- close(arch);
- end;
- procedure imprimir(var archN:archivoN);
- var
- n:nuevo;
- begin
- reset(archN);
- while(not eof(archN))do begin
- read(archN,n);
- writeln('El cod de empleado es:',n.codEmp);
- writeln('El nombre del empleado es:',n.nombre);
- writeln('El monto total del empleado es:',n.total);
- end;
- close(archN);
- end;
- var
- arch:archivo;
- nombre,nombre2:String;
- archN:archivoN;
- begin
- writeln('Inserte un nombre para el archivo');
- readln(nombre);
- assign(arch,nombre);
- writeln('Inserte un nombre para el nuevo archivo');
- readln(nombre2);
- assign(archN,nombre2);
- generarArchivo(arch);
- nuevoArchivo(arch,archN);
- imprimir(archN);
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement