Помощь - Поиск - Пользователи - Календарь
Полная версия: чтение двумерного списка из файла
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
fIlIGrot
Здравствуйте! Не могли бы вы помочь в следующем: не получается написать процедуру чтения двумерного списка:
Код

type
    Pavtor=^book;
    book=record
    name:string;
    next:pavtor;
    end;

    Pbook=^allbook;
    allbook=record
    number:pavtor;
    name:string[10];
    next:pbook;
    end;

    filex=file of pbook;

из файла... Есть некоторая наработка:
Код

procedure open(var pr:pbook);
var pp,last,nach:pbook;
   ppp,lastt:pavtor;
   fil1:filex;
   fil2:text;
   s,x:string;
   i:integer;
begin
clrscr;
writeln('Vvedite name of file');
readln(s);
assign(fil1,s);
reset(fil1);
if pr<>nil then pr:= nil;
while not eof(fil1) do
begin
  new(pp);
  read(fil1, pp);
  pp^.next := nil;
  if pr = nil then pr := pp else last^.next := pp;
  last := pp;
end;
i:=1;
nach:=pr;
while assigned(pr^.number) do
      begin
           assign(fil2,pr^.name);
           reset(fil2);
           pr^.number:=nil;
           while not eof(fil2) do
                 begin
                      new(ppp);
                      x:='';
                      while x[i]<>' ' do
                      begin
                      x:=x+x[i];
                      i:=i+1;
                      end;
                      ppp^.name:=x;
                      i:=i+1;
                      if pr^.number= nil then
                                     pr^.number:= ppp
                                         else
                      lastt^.next:=ppp;
                 end;
           close(fil2);
           pr^.number:=pr^.number^.next;
      end;
pr:=nach;
end;

Пожалуйста, помогите sad.gif
volvo
Цитата
не получается написать процедуру чтения двумерного списка

И не получится...
Код

Pbook=^allbook;
allbook=record
 number:pavtor;
 name:string[10];
 next:pbook;
end;

filex=file of pbook;

Что это значит? Файл содержит указатели на структуру? Не имеет смысла, т.к. адреса сами по себе не важны, важно содержимое памяти по этим адресам...

P.S. Ник QDe5n1K ничего не напоминает?
fIlIGrot
Цитата(volvo @ 10.12.04 1:08)
И не получится...
Код

Pbook=^allbook;
allbook=record
 number:pavtor;
 name:string[10];
 next:pbook;
end;

filex=file of pbook;

Что это значит? Файл содержит указатели на структуру? Не имеет смысла, т.к. адреса сами по себе не важны, важно содержимое памяти по этим адресам...

P.S. Ник QDe5n1K ничего не напоминает?

Хм... где-то видел такой lol.gif :p2:
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.