Pgina 0 de 32
Pgina 1 de 32
Pgina 2 de 32
Datos de Salida:
- Buscar un vehculo determinado mediante la placa del mismo y presente por medio de la
pantalla toda la informacin relativa a ese vehculo.
- Generar por medio de la opcin Reporte los siguientes diseos:
Pgina 3 de 32
INCLUIR
CONSULTAR
MODIFICAR
ELIMINAR
REPORTE
SALIDA
OPCIN: _____
ENTRADAS
Placa del vehculo
Nmeros de pasajeros
Nombres de la alcabala
Tipo de acceso a la alcabala
Fecha
Tipo de vehculo
SALIDAS
- Datos del Vehculo y la alcabala
- Cantidad y porcentaje de vehculos que salen y
entran
- Nmero de alcabalas
- Das transitados
- Promedio de pasajeros
Pgina 4 de 32
Inicializar
Variables y Arreglos
Incluir
Consultar
Modificar
Eliminar
Reporte
Pgina 5 de 32
Pgina 6 de 32
3: Rutina: Modificar
4: Rutina: Eliminar
5: Rutina: Reporte
6: Rutina: Salida
Fin
FIN
PROCEDURE INCLUIR
Inicio
Leer placa vehculo
Leer nmero de pasajeros
Leer Alcabala
Leer Tipo de Trnsito
Leer Fecha
Leer Tipo de vehculo
Guardar datos
Fin
PROCEDURE CONSULTAR
Inicio
Leer placa
Mostrar todos los datos del registro
FIN
PROCEDURE MODIFICAR
Inicio
Leer placa
Mostrar cada dato del registro
Pedir datos para modificar o ENTER para dejar igual
FIN
PROCEDURE ELIMINAR
Inicio
Leer placa
Mostrar cada dato del registro
Eliminar registro
FIN
PROCEDURE REPORTE
Inicio
Reporte 1: Alcabala y Fecha
Ir a Ordenar por alcabala y fecha
Encabezamiento
Ciclo de leer Archivo ordenado por alcabala y fecha
Escribir una pgina por alcabala
Fin de ciclo de lectura del archivo
Escribir totales generales
Reporte 2: Placa
Pgina 7 de 32
Pgina 8 de 32
Pgina 9 de 32
ALGORITMO: NIVEL 3
Inicio
Nombre y definicin de programa y variables
Men principal
Mostrar: * Men principal *
Opciones
Incluir
Modificar
Consultar
Eliminar
Reporte
Salida
Entrada de Seleccin
Validar: Procedure Nmero
Si Valida = Falso
Mensaje Error en la opcin seleccionada
Salir del programa
Fin Si
Case of Seleccin
1: Rutina: Incluir
2: Rutina: Consultar
3: Rutina: Modificar
4: Rutina: Eliminar
5: Rutina: Reporte
6: Rutina: Salida
Fin
FIN
PROCEDURE INCLUIR
Inicio
Leer placa vehculo
Validar: Placa
Aceptar mximo 7 dgitos
Si Placa =
Salir al men de opciones
Fin Si
Leer nmero de pasajeros
Validar: aceptar solo un nmero
Leer Alcabala
Validar: aceptar hasta 20 caracteres
Leer Tipo de Trnsito
Validar: aceptar solo S o E
Leer Fecha
Validar: aceptar solo 8 dgitos
Pgina 10 de 32
Reporte 2: Placa
Ir a Ordenar por placa
Encabezamiento
Ciclo de leer Archivo ordenado por placa
Contar y efectuar clculos de fechas
Fin de ciclo de lectura del archivo
Escribir totales generales
Reporte 3: Alcabala y tipo de vehculo
Ir a Ordenar por alcabala y tipo de vehculo
Encabezamiento
Ciclo de leer Archivo ordenado por alcabala y tipo de vehculo
Escribir una pgina por alcabala
Contar y efectuar clculos de fechas
Escribir los resultados totales por alcabala
Fin de ciclo de lectura del archivo
Escribir totales generales
FIN
PROCEDURE ORDENAR 1
Inicio
Hacer ordenamiento de burbujas
Ciclo descendente del archivo
Ciclo ascendente del archivo
Crear dato compuesto de alcabala y fecha
Comparar cada registro con el siguiente
Si el siguiente es mayor que el actual
Intercambiar datos de cada vector
Fin Si
Fin ciclo ascendente
Fin ciclo descendente
FIN
PROCEDURE ORDENAR 2
Inicio
Hacer ordenamiento de burbujas
Ciclo descendente del archivo
Ciclo ascendente del archivo
Comparar placa del registro con el siguiente
Si el siguiente es mayor que el actual
Intercambiar datos de cada vector
Fin Si
Fin ciclo ascendente
Fin ciclo descendente
FIN
PROCEDURE ORDENAR 3
Inicio
Hacer ordenamiento de burbujas
Pgina 11 de 32
Pgina 12 de 32
PROGRAMA EN PASCAL
PROGRAM ALCABALA;
uses crt,dos;
VAR
MENU:integer;
{VARIABLES PARA OBTENER EL DIA, MES Y ANYO}
dia: word;
mes: word;
anyo: word;
diasem:word;
{Declaracion de los arreglos o vectores}
PlaVeh: array [1..100] of string[7];
NumPas: array [1..100] of integer;
Alcaba: array [1..100] of string[20];
TipTra: array [1..100] of string[1];
FechaF: array [1..100] of string[8];
TipVeh: array [1..100] of string[1];
{Variables auxiliares para la inclusion y modificacion}
AuxPlaVeh:string[7];
AuxNumPas:integer;
AuxAlcaba:string[20];
AuxTipTra:string[1];
AuxFechaF:string[8];
AuxTipVeh:string[1];
N,I,K:integer;
A:STRING[1];
SWITCH:boolean;
{SWITCH QUE INDICA EXISTENCIA DE UN REGISTRO}
Pgina 13 de 32
Pgina 14 de 32
SWITCH:=true;
GOTOXY(1,5);
writeln('---------------------------------------------------');
writeln('REGISTRO NO.
: ',k);
writeln('No. PASAJEROS
: ',NumPas[K]);
writeln('ALCABALA
: ',Alcaba[K]);
writeln('ENTRADA O SALIDA : ',TipTra[K]);
writeln('FECHA
: ',FechaF[K]);
writeln('TIPO DE VEHICULO
: ',TipVeh[K]);
if TipVeh[k]='1' then writeln('Para Particulares');
if TipVeh[k]='2' then writeln('Para Por Puesto');
if TipVeh[k]='3' then writeln('Para Taxi');
if TipVeh[k]='4' then writeln('Para Transporte Pblico');
writeln('---------------------------------------------------');
AuxNumPas:=0;
AuxAlcaba:='';
AuxTipTra:='';
AuxFechaF:='';
AuxTipVeh:='';
GOTOXY(50,7);readln(AuxNumPas);
GOTOXY(50,8);readln(AuxAlcaba);
GOTOXY(50,9);readln(AuxTipTra);
GOTOXY(50,10);readln(AuxFechaF);
GOTOXY(50,11);readln(AuxTipVeh);
if AuxNumPas<>0 then NumPas[K]:=AuxNumPas;
if AuxAlcaba<>'' then Alcaba[K]:=AuxAlcaba;
if AuxTipTra<>'' then TipTra[K]:=AuxTipTra;
if AuxFechaF<>'' then FechaF[K]:=AuxFechaF;
if AuxTipVeh<>'' then TipVeh[K]:=AuxTipVeh;
writeln('Cualquier tecla para continuar');
readln(a);
end;
end;
END;
{PROCEDIMIENTO PARA ELIMINAR REGISTROS}
PROCEDURE ELIMINAR;
BEGIN
CLRSCR;
WRITELN;
write('PLACA DEL VEHICULO: ');readln(AuxPlaVeh);
SWITCH:=false;
K:=0;
while (K<N+1) and (SWITCH<>true) do
Pgina 15 de 32
Pgina 16 de 32
begin
K:=K+1;
if (PlaVeh[K]=AuxPlaVeh) and (PlaVeh[K]<>'ELIM') then
begin
SWITCH:=true;
GOTOXY(1,5);
writeln('---------------------------------------------------');
writeln('REGISTRO NO.
: ',k);
writeln('No. PASAJEROS
: ',NumPas[K]);
writeln('ALCABALA
: ',Alcaba[K]);
writeln('ENTRADA O SALIDA : ',TipTra[K]);
writeln('FECHA
: ',FechaF[K]);
writeln('TIPO DE VEHICULO
: ',TipVeh[K]);
if TipVeh[k]='1' then writeln('Para Particulares');
if TipVeh[k]='2' then writeln('Para Por Puesto');
if TipVeh[k]='3' then writeln('Para Taxi');
if TipVeh[k]='4' then writeln('Para Transporte Pblico');
writeln('---------------------------------------------------');
write('DESEA ELIMINAR ESTE REGISTRO? (S/N)');readln(A);
{ELIMINACION LOGICA MARCANDO EL REGISTRO CON LA PALABRA ELIM}
if (A='S') OR (A='s') then PlaVeh[K]:='ELIM';
end;
end;
END;
{PROCEDIMIENTO PARA HACER EL ORDENAMIENTO POR ALCABALA Y FECHA}
PROCEDURE ORDEN1;
VAR
I,J:INTEGER;
AUX1,AUX2:STRING[28]; {VARIABLES PARA DATO COMPUESTO DE ALCABALA Y
FECHA}
BEGIN
FOR I:=N DOWNTO 1 DO
BEGIN
FOR J:= 1 TO I-1 DO
BEGIN
AUX1:=Alcaba[J]+COPY(FechaF[J],5,4)+COPY(FechaF[J],3,2)+COPY(FechaF[J],1,2);
AUX2:=Alcaba[J+1]+COPY(FechaF[J+1],5,4)+COPY(FechaF[J+1],3,2)+COPY(FechaF[J+1],1,2);
IF AUX1 > AUX2 THEN
BEGIN
{INTERCAMBIO DE DATOS ENTRE UN REGISTRO Y EL SIGUIENTE}
AuxPlaVeh:=PlaVeh[J];PlaVeh[J]:=PlaVeh[J+1];PlaVeh[J+1]:=AuxPlaVeh;
AuxNumPas:=NumPas[J];NumPas[J]:=NumPas[J+1];NumPas[J+1]:=AuxNumPas;
AuxAlcaba:=Alcaba[J];Alcaba[J]:=Alcaba[J+1];Alcaba[J+1]:=AuxAlcaba;
AuxTipTra:=TipTra[J];TipTra[J]:=TipTra[J+1];TipTra[J+1]:=AuxTipTra;
Pgina 17 de 32
AuxFechaF:=FechaF[J];FechaF[J]:=FechaF[J+1];FechaF[J+1]:=AuxFechaF;
AuxTipVeh:=TipVeh[J];TipVeh[J]:=TipVeh[J+1];TipVeh[J+1]:=AuxTipVeh;
END;
END;
END;
END;
{PROCEDIMIENTO PARA HACER EL ORDENAMIENTO POR PLACA DE VEHICULO}
PROCEDURE ORDEN2;
VAR
I,J:INTEGER;
BEGIN
FOR I:=N DOWNTO 1 DO
BEGIN
FOR J:= 1 TO I-1 DO
BEGIN
IF PlaVeh[J] > PlaVeh[J+1] THEN
BEGIN
{INTERCAMBIO DE DATOS ENTRE UN REGISTRO Y EL SIGUIENTE}
AuxPlaVeh:=PlaVeh[J];PlaVeh[J]:=PlaVeh[J+1];PlaVeh[J+1]:=AuxPlaVeh;
AuxNumPas:=NumPas[J];NumPas[J]:=NumPas[J+1];NumPas[J+1]:=AuxNumPas;
AuxAlcaba:=Alcaba[J];Alcaba[J]:=Alcaba[J+1];Alcaba[J+1]:=AuxAlcaba;
AuxTipTra:=TipTra[J];TipTra[J]:=TipTra[J+1];TipTra[J+1]:=AuxTipTra;
AuxFechaF:=FechaF[J];FechaF[J]:=FechaF[J+1];FechaF[J+1]:=AuxFechaF;
AuxTipVeh:=TipVeh[J];TipVeh[J]:=TipVeh[J+1];TipVeh[J+1]:=AuxTipVeh;
END;
END;
END;
END;
{PROCEDIMIENTO PARA HACER EL ORDENAMIENTO POR ALCABALA Y YIPO DE
VEHICULO}
PROCEDURE ORDEN3;
VAR
I,J:INTEGER;
AUX1,AUX2:STRING[21]; {VARIABLES PARA DATO COMPUESTO DE ALCABALA Y TIPO
DE VEHICULO}
BEGIN
FOR I:=N DOWNTO 1 DO
BEGIN
FOR J:= 1 TO I-1 DO
BEGIN
AUX1:=Alcaba[J]+TipVeh[J];
AUX2:=Alcaba[J+1]+TipVeh[J+1];
IF AUX1 > AUX2 THEN
BEGIN
Pgina 18 de 32
Pgina 19 de 32
i:=i+1;
gotoxy(2,i);
writeln(FechaT);
gotoxy(20,i);
writeln(Salen:5);
gotoxy(30,i);
writeln(Entran:5);
gotoxy(50,i);
writeln(PorSalen:5);
gotoxy(60,i);
writeln(PorEntran:5);
TotFechas:=TotFechas+1;
TotEntran:=TotEntran+Entran;TotSalen:=TotSalen+Salen;
Entran:=0;Salen:=0;
end;
if (T>1) and (AlcabaP<>Alcaba[k]) then {Viene otra alcabala, debe imprimir totales}
begin
writeln('**************************************************************************
*****');
writeln(' Total de Fechas Procesadas: ',TotFechas:5);
readln(a);
TotFechas:=0;T:=0;pag:=pag+1;
end;
if T<2 then {Encabezado con cada alcabala}
begin
clrscr;
i:=2;
gotoxy(1,i);
writeln('Coordinacion de Transito Nacional
Pag.',pag);
writeln('
** ESTADISTICA POR ALCABALA **');
writeln('ALCABALA: ',Alcaba[k]);
writeln(' Fecha
Cantidad de vehiculos
Porcentaje de vehiculos');
writeln('
Salen Entran
Salen Entran');
writeln('**************************************************************************
*****');
i:=7;
end;
FechaP:=FechaF[k];
AlcabaP:=Alcaba[k];
{Contadores}
if (TipTra[k]='E') or (TipTra[k]='e') then Entran:=Entran+1;
if (TipTra[k]='S') or (TipTra[k]='s') then Salen:=Salen+1;
end;
Pgina 20 de 32
K:=K+1;
end;
writeln;
{FINAL DE LECTURA DE LOS VECTORES}
if T<2 then {Encabezado con cada alcabala}
begin
clrscr;
i:=2;
gotoxy(1,i);
writeln('Coordinacion de Transito Nacional
Pag.',pag);
writeln('
** ESTADISTICA POR ALCABALA **');
writeln('ALCABALA: ',AlcabaP);
writeln(' Fecha
Cantidad de vehiculos
Porcentaje de vehiculos');
writeln('
Salen Entran
Salen Entran');
writeln('**************************************************************************
*****');
i:=7;
end;
FechaT:=COPY(FechaP,1,2)+'/'+COPY(FechaP,3,2)+'/'+COPY(FechaP,5,4);
PorEntran:=Round(Entran*100/(Entran+Salen));
PorSalen:=Round(Salen*100/(Entran+Salen));
i:=i+1;
gotoxy(2,i);
writeln(FechaT);
gotoxy(20,i);
writeln(Salen:5);
gotoxy(30,i);
writeln(Entran:5);
gotoxy(50,i);
writeln(PorSalen:5);
gotoxy(60,i);
writeln(PorEntran:5);
TotFechas:=TotFechas+1;
TotEntran:=TotEntran+Entran;TotSalen:=TotSalen+Salen;
Entran:=0;Salen:=0;
writeln('**************************************************************************
*****');
writeln(' Total de Fechas Procesadas: ',TotFechas:5);
readln(a);
{FIN REPORTE 1: ALCABALA Y FECHA}
{INICIO REPORTE 2: PLACA DE VEHICULO}
ORDEN2;
Pgina 21 de 32
k:=1;pag:=1;T:=0;Fecha1:='31121999';Fecha2:='31121999';NumAlc:=0;TotPas:=0;ToTVehiculos:=0
;
while (K<N+1) AND (N>0) do {Ciclo de lectura de los registros}
begin
if PlaVeh[K]<>'ELIM' then {Omitir los marcados como eliminados}
begin
T:=T+1;
if (T>1) and (PlaVehP<>PlaVeh[k]) then {Viene otra placa de vehiculo, debe imprimir}
begin
ProPas:=Round(TotPas/NumAlc);
Z:=1;
X:=Fecha1[1]+Fecha1[2];VAL(X,DIA,Z);
X:=Fecha1[3]+Fecha1[4];VAL(X,MES,Z);
X:=Fecha1[5]+Fecha1[6]+Fecha1[7]+Fecha1[8];VAL(X,AYO,Z);
Dias1:=DIA+MES*30+AYO*360;
X:=Fecha2[1]+Fecha2[2];VAL(X,DIA,Z);
X:=Fecha2[3]+Fecha2[4];VAL(X,MES,Z);
X:=Fecha2[5]+Fecha2[6]+Fecha2[7]+Fecha2[8];VAL(X,AYO,Z);
Dias2:=DIA+MES*30+AYO*360;
DiaTra:=Dias2-Dias1;
if DiaTra<0 then DiaTra:=0;
i:=i+1;
gotoxy(3,i);
writeln(PlaVehP);
gotoxy(20,i);
writeln(NumAlc:5);
gotoxy(40,i);
writeln(DiaTra:5);
gotoxy(60,i);
writeln(ProPas:5);
ToTVehiculos:=ToTVehiculos+1;
NumAlc:=0;TotPas:=0;
end;
if T<2 then {Encabezado con cada placa de vechiculo}
begin
clrscr;
i:=2;
gotoxy(1,i);
writeln('Coordinacion de Transito Nacional
Pag.',pag);
writeln('
** ESTADISTICA POR VEHICULO **');
writeln;
writeln(' Placa
NUMERO DE
DIAS
PROMEDIO DE');
writeln('
ALCABALAS
TRANSITADOS
PASAJEROS');
Pgina 22 de 32
writeln('**************************************************************************
*****');
i:=7;
end;
PlaVehP:=PlaVeh[k];
{Contadores}
NumAlc:=NumAlc+1;
TotPas:=TotPas+NumPas[k];
if (TipTra[k]='E') or (TipTra[k]='e') then {Calculos para entrada a alcabala}
begin
if Fecha1='31121999' then Fecha1:=FechaF[k];
Z:=1;
X:=Fecha1[1]+Fecha1[2];VAL(X,DIA,Z);
X:=Fecha1[3]+Fecha1[4];VAL(X,MES,Z);
X:=Fecha1[5]+Fecha1[6]+Fecha1[7]+Fecha1[8];VAL(X,AYO,Z);
Dias1:=DIA+MES*30+AYO*360;
X:=FechaF[K,1]+FechaF[K,2];VAL(X,DIA,Z);
X:=FechaF[K,3]+FechaF[K,4];VAL(X,MES,Z);
X:=FechaF[K,5]+FechaF[K,6]+FechaF[K,7]+FechaF[K,8];VAL(X,AYO,Z);
Dias2:=DIA+MES*30+AYO*360;
if Dias2<Dias1 then Fecha1:=FechaF[k];
end;
if (TipTra[k]='S') or (TipTra[k]='s') then {Calculos para salida de alcabala}
begin
if Fecha2='31121999' then Fecha2:=FechaF[k];
Z:=1;
X:=Fecha2[1]+Fecha2[2];VAL(X,DIA,Z);
X:=Fecha2[3]+Fecha2[4];VAL(X,MES,Z);
X:=Fecha2[5]+Fecha2[6]+Fecha2[7]+Fecha2[8];VAL(X,AYO,Z);
Dias1:=DIA+MES*30+AYO*360;
X:=FechaF[K,1]+FechaF[K,2];VAL(X,DIA,Z);
X:=FechaF[K,3]+FechaF[K,4];VAL(X,MES,Z);
X:=FechaF[K,5]+FechaF[K,6]+FechaF[K,7]+FechaF[K,8];VAL(X,AYO,Z);
Dias2:=DIA+MES*30+AYO*360;
if Dias2>Dias1 then Fecha2:=FechaF[k];
end;
end;
K:=K+1;
end;
writeln;
{FINAL DE LECTURA DE LOS VECTORES}
if T<2 then {Encabezado con cada placa de vechiculo}
begin
clrscr;
i:=2;
gotoxy(1,i);
Pgina 23 de 32
Pgina 24 de 32
T:=T+1;
if (T>1) and (TipVehP<>TipVeh[k]) then {Viene otro tipo de vehiculo, debe imprimir}
begin
if TipVehP='1' then TipVehT:='Particulares';
if TipVehP='2' then TipVehT:='Por Puesto';
if TipVehP='3' then TipVehT:='Taxi';
if TipVehP='4' then TipVehT:='Transporte Publico';
PorVeh:=Round(CanVeh*100/N);
ProPas:=Round(PasCon/CanVeh);
i:=i+1;
gotoxy(2,i);
writeln(TipVehT);
gotoxy(30,i);
writeln(CanVeh:5);
gotoxy(40,i);
writeln(PorVeh:5);
gotoxy(60,i);
writeln(ProPas:5);
CanVeh:=0;PasCon:=0;
end;
if (T>1) and (AlcabaP<>Alcaba[k]) then {Viene otra alcabala, debe imprimir totales}
begin
writeln('**************************************************************************
*****');
writeln(' Total de Vehiculos Procesados: ',TotVehiculos:5);
readln(a);
TotVehiculos:=0;T:=0;pag:=pag+1;
end;
if T<2 then {Encabezado con cada alcabala}
begin
clrscr;
i:=2;
gotoxy(1,i);
writeln('Coordinacion de Transito Nacional
Pag.',pag);
writeln('
** ESTADISTICA POR ALCABALA **');
writeln('ALCABALA: ',Alcaba[k]);
writeln(' TIPO DE
VEHICULOS
PASAJEROS');
writeln(' VEHICULO
CANTIDAD PORCENTAJE
CONTABILIZADOS');
writeln('**************************************************************************
*****');
i:=7;
end;
Pgina 25 de 32
TipVehP:=TipVeh[k];
AlcabaP:=Alcaba[k];
{Contadores}
CanVeh:=Canveh+1;
PasCon:=PasCon+NumPas[k];
TotVehiculos:=TotVehiculos+1;
end;
K:=K+1;
end;
writeln;
{FINAL DE LECTURA DE LOS VECTORES}
if T<2 then {Encabezado con cada alcabala}
begin
clrscr;
i:=2;
gotoxy(1,i);
writeln('Coordinacion de Transito Nacional
Pag.',pag);
writeln('
** ESTADISTICA POR ALCABALA **');
writeln('ALCABALA: ',AlcabaP);
writeln(' TIPO DE
VEHICULOS
PASAJEROS');
writeln(' VEHICULO
CANTIDAD PORCENTAJE
CONTABILIZADOS');
writeln('**************************************************************************
*****');
i:=7;
end;
if TipVehP='1' then TipVehT:='Particulares';
if TipVehP='2' then TipVehT:='Por Puesto';
if TipVehP='3' then TipVehT:='Taxi';
if TipVehP='4' then TipVehT:='Transporte Publico';
PorVeh:=Round(CanVeh*100/N);
ProPas:=Round(PasCon/CanVeh);
i:=i+1;
gotoxy(2,i);
writeln(TipVehT);
gotoxy(30,i);
writeln(CanVeh:5);
gotoxy(40,i);
writeln(PorVeh:5);
gotoxy(60,i);
writeln(ProPas:5);
writeln('**************************************************************************
*****');
writeln(' Total de Vehiculos Procesados: ',TotVehiculos:5);
readln(a);
{FIN REPORTE 3: ALCABALA Y TIPO DE VEHICULO}
END;
BEGIN (* PRINCIPAL *)
textcolor(lightgreen);
textbackground(black);
GetDate(anyo, mes, dia, diasem);
repeat
repeat
clrscr;
WRITELN;
writeln('
COORDINACION DE TRANSITO NACIONAL');
writeln('
*********************************');
WRITELN('
',dia,'/',mes,'/',anyo);
writeln('
MENU DE OPCIONES');
writeln('
****************');
WRITELN;
writeln('
1.- I N C L U I R');WRITELN;
writeln('
2.- C O N S U L T A R');WRITELN;
writeln('
3.- M O D I F I C A R');WRITELN;
writeln('
4.- E L I M I N A R');WRITELN;
writeln('
5.- R E P O R T E S');WRITELN;
writeln('
6.- S A L I D A');WRITELN;
writeln;
write('OPCION : ');readLN(MENU);
until (MENU>0) and (MENU<7);
case MENU of
1:INCLUIR;
2:CONSULTAR;
3:MODIFICAR;
4:ELIMINAR;
5:REPORTE;
end;
until MENU=6;
END.
Pgina 26 de 32
Pgina 27 de 32
Opcin Incluir:
Pgina 28 de 32
Opcin Consultar:
Opcin Modificar:
Pgina 29 de 32
Opcin Eliminar:
Opcin Reporte 1:
Pgina 30 de 32
Opcin Reporte 2:
Opcin Reporte 3:
Pgina 31 de 32