• Jueves 14 de Noviembre de 2024, 23:17

Autor Tema:  ejemplo de listas con apuntadores  (Leído 2720 veces)

epayan

  • Miembro activo
  • **
  • Mensajes: 41
  • Nacionalidad: mx
    • Ver Perfil
    • http://www.pillin-slk.blogspot.com
ejemplo de listas con apuntadores
« en: Viernes 2 de Octubre de 2009, 21:21 »
0
la ultima entrega que hice fué de Archivos tipeados y registros.
SI bien son utiles para manejar informacion permanente en la computadora , no es muy recomendable trabajar directamente con ellas, la razon es la velocidad..

Para solventar este problema se utilizan la memoria, y como usar esta memoria ?.. Nada mas y nada menos que con apuntadores , manajedos atravez de listas. He aqui un ejemplo de como cargar un archivo tipeado (records) y trabajar con ese archivo en la memoria, se nota mucho la diferencia a que si se trabajára con los archivos fisicamente .

que les sea de utilidad
anexo el programa principal
Código: Pascal
  1.  
  2. program ejemploapuntadores;
  3. uses crt,utileria,apuntadores;
  4.  
  5. {cuerpo del programa}
  6. Var
  7.   TIApuntadorRegistro:ApuntadorRegistro;
  8.   Inicio,Final:ApuntadorRegistro;
  9.   Archivo:TipoArchivo;
  10.   Registro:TipoRegistro;
  11.   tecla:char;
  12.   Tamanio,contador:longint;
  13.   Opcion:Integer;
  14.   ArregloSeleccion:arregloVertical;
  15.   Ventana1:Save_screen;
  16. Begin
  17.     textattr:=15+1*16;
  18.     clrscr;
  19.     ArregloSeleccion[1]:='Mant. a Reg.';
  20.     ArregloSeleccion[2]:=' Listado    ';
  21.     ArregloSeleccion[3]:='Acerda de ..';
  22.     ArregloSeleccion[4]:='   Salir    ';
  23.     cuadro3d(1,1,80,3,2,1);
  24.     Textattr:=0+2*16;
  25.     gotoxy(2,2);write(' Ejemplos del uso de Apuntadores y Registros en Pascal 11/10/2009');
  26.     cuadro3d(2,23,79,25,2,1);
  27.     Textattr:=0+2*16;
  28.     gotoxy(45,24);write('epayan76@hotmail.com');
  29.     InicializaLista(Inicio,Final);
  30.     AperturaDeArchivo(Archivo);
  31.     CargaArchivoAMemoria(Archivo,Registro,Inicio,Final,TIApuntadorRegistro);
  32.     Close(archivo);
  33.     Repeat
  34.          cursoroff;
  35.          Opcion := MenuVertical(ArregloSeleccion,4,1,5,0,7,15,1);
  36.          case Opcion of
  37.              1 : Begin
  38.                    GetScreen(ventana1);
  39.                    Alta(Registro,Inicio,Final,TIApuntadorRegistro);
  40.                    PutScreen(Ventana1);
  41.                  End;
  42.              2 : Begin
  43.                    GetScreen(ventana1);
  44.                    EfectoScroll(Inicio,Final,TIApuntadorRegistro);
  45.                    PutScreen(Ventana1);
  46.                  End;
  47.              3 : Begin
  48.                    GetScreen(ventana1);
  49.                    AcercaDe;
  50.                    PutScreen(Ventana1);
  51.                  End;
  52.          end;{case}
  53.     Until ( Opcion = 4) or ( Opcion = 27);
  54. End.
  55.  
  56.  
  57.  


anexo archivo zip con las utilerias y el archivo.dat que debera estar en c:
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.