• Viernes 29 de Marzo de 2024, 10:35

Autor Tema:  Re: Ayuda con un procedimiento  (Leído 1984 veces)

Panteon

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: Ayuda con un procedimiento
« en: Martes 21 de Septiembre de 2004, 02:56 »
0
Tengo un problema ocn un prodecimiento el cual se supone que debe de pasar todo lo que tengo guardado en un archivo de acceso directo a un array

aquí está el procedimeinto
Citar
procedure listar;
var
cont,x,j:integer;
begin
clrscr;
     assign(datos, 'alumnos.txt');
     reset(datos);
     seek (datos,0);
     for x:=1 to (filesize(datos)) do
         begin
             read (datos, persona);
             arrper
  • .matricula:=persona.matricula;

             arrper
  • .nombre:=persona.nombre;

             arrper
  • .apellidop:=persona.apellidop;

             arrper
  • .apellidom:=persona.apellidom;

          end;

     for x:=1 to (filesize(datos)pp) do
     writeln (arrper
  • .nombre);
el problema es que cuando los despliego solo me  imprime el ultimo  de los alumnos en el archivo directo. y la verdad no encuentro porque no funciona...espero que alguie me pueda ayudar

Gracias

REDD

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Ayuda con un procedimiento
« Respuesta #1 en: Martes 21 de Septiembre de 2004, 15:43 »
0
Si estas manejando un archivo de texto te combiene mejor hacer esto:

Citar
uses crt;
type
  reg=record
    matricula:string;
    nombre:string;
    apellidop:string;
    apellidom:string;
  end;

var
datos:text;
arrper:array[1..50]of reg;

procedure listar;
var
cont,x,j:integer;
begin
clrscr;
    assign(datos, 'alumnos.txt');
    reset(datos);
    x:=1;
    while not(seekeof(datos)) do
        begin
            readln(datos,arrper
  • .matricula);

            readln(datos,arrper
  • .nombre);

            readln(datos,arrper
  • .apellidop);

            readln(datos,arrper
  • .apellidom);

            inc(x);
         end;

    for j:=1 to (x) do
      writeln (arrper[j].nombre);
    readln;
end;

begin
  listar;
end.

El archivo de texto supongo que es de la siguiente manera:

03060153
Fulanito
Apellido paterno
Apellido materno
02041144
Manganito
Apellido paterno
Apellido materno

Panteon

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
Re: Ayuda con un procedimiento
« Respuesta #2 en: Jueves 23 de Septiembre de 2004, 02:07 »
0
Muchisimas gracias!! resolviste una duda que tenia jejeje gracias de nuevo