Programación de comprobantes de pago

8
Programación de Comprobantes de pago // Programa que permite elaborar los comprobantes de pago // del personal que labora en la institucion // Elaborado por: *Grupo Aglodavaci // Seccion 3 - T1-T2 PROGRAM Mini_Proyecto; USES CRT; VAR ci, I, a, d, e, F, G, Z, Y ,nh, aser, cpa,cpd,cpo,te: INTEGER; resp:char; nom, ape, car: string[10]; sb, sso, im, ia, pf, ca, fj, ah, sn, ing, dec, phijo, phogar, p_ant, pprof: real; //procedimiento que permite ingresar los datos del personal PROCEDURE datos; BEGIN textcolor(15); GotoXY(12,7);Write('Ingresar Datos:'); GotoXY(17,9);Write('Nombres: '); read(nom); READln; GotoXY(17,11);Write('Apellidos: '); read(ape); READln; GotoXY(17,13);Write('Cedula: '); read(ci); READln; GotoXY(17,15);Write('Cargo: '); read(car); READln; GotoXY(17,17);Write('Nro de hijos: '); read(nh); READln; GotoXY(17,19);Write('Sueldo base: '); read(sb); READln; END; //procedimiento que permite formar el comprobante de pago PROCEDURE tabla; BEGIN FOR I:= 4 TO 76 DO BEGIN

description

 

Transcript of Programación de comprobantes de pago

Programación de Comprobantes de pago

// Programa que permite elaborar los comprobantes de pago // del personal que labora en la institucion // Elaborado por: *Grupo Aglodavaci // Seccion 3 - T1-T2 PROGRAM Mini_Proyecto; USES CRT; VAR ci, I, a, d, e, F, G, Z, Y ,nh, aser, cpa,cpd,cpo,te: INTEGER; resp:char; nom, ape, car: string[10]; sb, sso, im, ia, pf, ca, fj, ah, sn, ing, dec, phijo, phogar, p_ant, pprof: real; //procedimiento que permite ingresar los datos del personal PROCEDURE datos; BEGIN textcolor(15); GotoXY(12,7);Write('Ingresar Datos:'); GotoXY(17,9);Write('Nombres: '); read(nom); READln; GotoXY(17,11);Write('Apellidos: '); read(ape); READln; GotoXY(17,13);Write('Cedula: '); read(ci); READln; GotoXY(17,15);Write('Cargo: '); read(car); READln; GotoXY(17,17);Write('Nro de hijos: '); read(nh); READln; GotoXY(17,19);Write('Sueldo base: '); read(sb); READln; END; //procedimiento que permite formar el comprobante de pago PROCEDURE tabla; BEGIN FOR I:= 4 TO 76 DO BEGIN

GotoXY (I,3); WRITE(CHR(196)); GotoXY (I,5); WRITE(CHR(205)); GotoXY (I,10); WRITE(CHR(205)); GotoXY (I,12); WRITE(CHR(196)); GotoXY (I,20); WRITE(CHR(205)); GotoXY (I,22); WRITE(CHR(196)); END; textcolor(15); GotoXY(31,2);WRITE('COMPROBANTE DE PAGO'); GotoXY(5,6);WRITE('Periodo del 01/07/2010 AL 31/07/2010'); GotoXY(5,7);WRITE('Nombres y Apellidos');GotoXY(30,7);write(nom,' ', ape); GotoXY(5,8);WRITE('Cedula ');GotoXY(30,8);write(ci); GotoXY(5,9); WRITE('Cargo'); GotoXY(30,9);write(car); GotoXY(5,11); WRITE('Denominacion'); GotoXY(5,13); WRITE('Sueldo Base'); GotoXY(30,13);write(sb:6:2); GotoXY(5,14); WRITE('Prima por hijos'); GotoXY(31,14);write(phijo:6:2); GotoXY(28,11); WRITE('Asignacion'); GotoXY(43,11); WRITE('Denominacion'); GotoXY(43,13); WRITE('Seguro Soc Obl');GotoXY(70,13);write(sso:6:2); GotoXY(43,14); WRITE('Ipasme Medico'); GotoXY(70,14);write(im:6:2); GotoXY(43,15); WRITE('Ipasme Ahorro'); GotoXY(70,15);write(ia:6:2); GotoXY(43,16); WRITE('Paro forzoso'); GotoXY(70,16);write(pf:6:2); GotoXY(43,17); WRITE('Ahorro Habitacional'); GotoXY(70,17);write(ah:6:2); GotoXY(43,18); WRITE('Caja de Ahorro'); GotoXY(70,18);write(ca:6:2); GotoXY(67,11); WRITE('Deduccion'); GotoXY(5,21); WRITE('Total Ingresos Bs.'); GotoXY(31,21); write(ing:6:2); GotoXY(41,21); WRITE('Total Deducciones Bs.'); GotoXY(69,21);write(dec:6:2); GotoXY(41,23); WRITE('Neto a cobrar Bs.'); GotoXY(69,23);write(sn:6:2); TEXTCOLOR(14); GotoXY(24,25); WRITE('Presione (ENTER) para volver al menu'); END; //** procedimiento que CALCULA LOS INGRESOS del pers administrativo Procedure Ing_adm(s_base :real; a_serv, nhijos: integer); begin phijo:= nhijos*160; phogar:= s_base*0.20 ; p_ant:= (s_base*0.015)*a_serv; pprof:= s_base*0.12 ; ing:= phijo+ phogar+ p_ant+ pprof+ s_base; end;

//** procedimiento que CALCULA LOS INGRESOS del pers docente y obrero Procedure Ing_docente_obrero(s_base :real; nhijos: integer); begin phijo:= nhijos*160; ing:= phijo+ s_base; end; // ** procedimiento que CALCULA LAS DEDUCCIONES del pers administrativo y obrero Procedure Dec_adm_obrero(s_base: real); begin sso:= (s_base*0.03); im:=(s_base*0.04); ia:=(s_base*0.04); pf:=(s_base*0.01); ca:=(s_base*0.10); ah:=(s_base*0.01); fj:= (s_base*0.04); dec:= sso+im+ia+pf+ca+fj+ah; end; //procedimiento que permite CALCULA LAS DEDUCCIONES del pers docente Procedure Dec_docente(s_base: real); begin sso:= (s_base*0.03); im:=(s_base*0.04); ia:=(s_base*0.04); pf:=(s_base*0.01); ca:=(s_base*0.07); ah:=(s_base*0.01); dec:= sso+im+ia+pf+ca; end; //Procedimiento que muestrar una linea de subrayado PROCEDURE linea1; BEGIN FOR a:= 29 TO 53 DO BEGIN TEXTCOLOR(11); GotoXY (a,5); WRITE(CHR(205));textcolor(11); END; END;

PROCEDURE lineaRE; BEGIN FOR d:= 24 TO 56 DO BEGIN textcolor(1); GotoXY (d,7); WRITE(CHR(45)); END; END; //procedimiento que muestra un cuedro en portada y menu principal PROCEDURE CUADRO; //CUADRO BEGIN TEXTCOLOR(15);//CAMBIA EL COLOR DE FONDO DE PANTALLA For Z:= 6 to 75 do begin GotoXY (Z,2);write(CHR(177)); GotoXY (Z,24);write(CHR(177)); end; //mustra lineas verticales For Y:= 2 to 24 do begin GotoXY(6,Y);write(CHR(177)); GotoXY(75,Y);write(CHR(177)); end; END; //*** PROGRAMA PRINCIPAL *** BEGIN clrscr; textbackground(1);//CAMBIA EL COLOR DE FONDO DE PANTALLA clrscr; // ** PORTADA ** CUADRO; textcolor(15); GotoXY(24,2);Write(' I.U.T. Dr. Federico Rivero Palacio '); GotoXY(27,4);Write('Departamento De Informatica'); GotoXY(25,6);Write('Catedra Algoritmo y Programacion'); textcolor(10); GotoXY(32,12);Write('Comprobante de Pago'); textcolor(15); GotoXY(15,17);Write('Elaborado por:');

GotoXY(50,17);Write('Grupo '); GotoXY(50,18);Write('Aglodavaci '); GotoXY(51,22);Write('Seccion 3 / T1-T2'); textcolor(13); GotoXY(25,24);Write(' Presione UNA TECLA para continuar '); readKey; sso:=0; im:=0; ia:=0; pf:=0; ca:=0; fj:=0; ah:=0; aser:=1; sb:=0; CLRSCR; REPEAT textbackground(16);//CAMBIA EL COLOR DE FONDO DE PANTALLA CLRSCR; CUADRO; textcolor(13); GotoXY(32,4);write(CHR(42)); //muestra Asteriscos a los lodos de menu principal GotoXY(33,4);write(CHR(42)); GotoXY(50,4);write(CHR(42)); GotoXY(51,4);write(CHR(42)); textcolor(11); GotoXY(35,4);WriteLN('MENU PRINCIPAL'); textcolor(15); GotoXY(15,8);WRITE(' -> Pers. Administrativo'); textcolor(10); GotoXY(19,8);WRITE('A'); textcolor(15); GotoXY(15,10);WRITE(' -> Pers. Docente'); textcolor(10); GotoXY(19,10);WRITE('D'); textcolor(15); GotoXY(15,12);WRITE(' -> Pers. Obrero'); textcolor(10); GotoXY(19,12);WRITE('O'); textcolor(15); GotoXY(15,14);WRITE(' -> Reporte de emplaedos procesados'); textcolor(10); GotoXY(19,14);WRITE('R'); textcolor(15); GotoXY(15,16);WRITE(' -> Salir'); textcolor(10); GotoXY(19,16);WRITE('S'); textcolor(13); GotoXY(34,21);Write('Ingrese su opcion: '); TEXTCOLOR(10);GotoXY(53,21);resp:= readkey;

CLRSCR; textbackground(16);//CAMBIA EL COLOR DE FONDO DE PANTALLA CLRSCR; CASE resp of 'A','a':begin //personal admon linea1; GOTOxy(30,4);Write('PERSONAL ADMINISTRATIVO'); datos; textcolor(15); GotoXY(17,21);Write('A os de servicio: '); GotoXY(18,21);Write(CHR(164));GotoXY(35,21);read(aser); readln; CLRSCR; textbackground(1); //cambia el color de fondo de pantalla CLRSCR; Ing_adm(sb, aser, nh); //LLAMA PROCEDIMIENTO Dec_adm_obrero(sb); //LLAMA PROCEDIMIENTO GotoXY(29,4);WRITE('PERSONAL ADMINISTRATIVO'); GotoXY(5,15);WRITE('Prima de Profesion'); GotoXY(31,15);write(pprof:6:2); GotoXY(5,16);WRITE('Prima por Antiguedad'); GotoXY(31,16);write(p_ant:6:2); GotoXY(5,17);WRITE('Prima por Hogar'); GotoXY(31,17);write(phogar:6:2); GotoXY(43,19);WRITE('Fondo Jubilacion'); GotoXY(70,19);write(fj:6:2); sn:= Ing-Dec; tabla; readln; //LLAMA PROCEDIMIENTO cpa:=cpa+1 end; 'D','d':begin //personal docente linea1; GOTOxy(34,4);Writeln('PERSONAL DOCENTE'); datos; CLRSCR; textbackground(1); //cambia el color de fondo de pantalla CLRSCR; Ing_docente_obrero(sb,nh);//LLAMA PROCEDIMIENTO Dec_docente(sb); //LLAMA PROCEDIMIENTO GotoXY(33,4);WRITE('PERSONAL DOCENTE'); sn:= Ing-Dec; tabla; READLN; cpd:=cpd+1 end; 'O','o':begin //Personal obrero

linea1; GOTOxy(34,4);Writeln('PERSONAL OBRERO'); datos; CLRSCR; textbackground(1); //cambia el color de fondo de pantalla CLRSCR; Ing_docente_obrero(sb,nh); //LLAMA PROCEDIMIENTO Dec_adm_obrero(sb); //LLAMA PROCEDIMIENTO GotoXY(33,4);WRITE('PERSONAL OBRERO'); GotoXY(43,19);WRITE('Fondo Jubilacion'); GotoXY(70,19);write(fj:6:2); sn:= Ing-Dec; tabla;readln; //LLAMA PROCEDIMIENTO cpo:=cpo+1 end; //**resumen de empleados** 'R','r':begin textbackground(15);//CAMBIA EL COLOR DE FONDO DE PANTALLA clrscr; textcolor(16); For F:= 17 to 63 do // forma un cuadro begin GotoXY (F,3);write(CHR(205)); GotoXY (F,20);write(CHR(205)); GotoXY (17,3);write(CHR(201));//esquina superior izquierda GotoXY (17,20);write(CHR(200)); //esquina inferior izquierda GotoXY (63,3);write(CHR(187)); GotoXY (63,20);write(CHR(188)); end; For G:= 4 to 19 do begin GotoXY(17,G);write(CHR(186)); GotoXY(63,G);write(CHR(186)); end; lineaRE; textcolor(1); //Da color al texto GOTOxy(25,6);Write('RESUMEN DE EMPLEADOS PROCESADOS'); textcolor(16); //Da color al texto GOTOxy(26,9);Write('Administrativos');GOTOxy(50,9);Writeln(cpa); GOTOxy(26,11);Write('Docentes ');GOTOxy(50,11);Writeln(cpd); GOTOxy(26,13);Write('Obreros'); GOTOxy(50,13);Writeln(cpo);

te:= cpa+cpd+cpo; GOTOxy(30,16);Write('Total ');GOTOxy(50,16);Writeln(te); For e:= 25 to 54 do begin GotoXY (e,14); WRITE(CHR(95));//muestra una linea end; textcolor(5); //color ROSADO GOTOxy(23,22);Write('Presione (ENTER) para volver al menu'); READLN; end; end;//fin de repetir textbackground(1);//CAMBIA EL COLOR DE FONDO DE PANTALLA CLRSCR; UNTIL (resp = 'S') or (resp = 's'); textcolor(13); GOTOxy(35,12);WriteLN('Cerrando...!'); textcolor(11); GOTOxy(25,8);WriteLN ('** GRACIAS POR USAR EL SISTEMA **'); textcolor(13); GotoXY (23,8); WRITE(CHR(1)); GotoXY (59,8); WRITE(CHR(1)); textcolor(14); GOTOxy(25,16);WriteLN('Presione UNA TECLA para finalizar'); readKEY; CLRSCR; END.