Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2010, 04:40   #1
mileshin
Новичок
Джуниор
 
Регистрация: 20.04.2010
Сообщений: 1
По умолчанию Вывод на экран записей в прямом и обратном порядке

В файле хранятся порядковый номер, название товара и стоимость. Вывести на экран записи файла в прямом и обратном порядке (от первой к последней, затем от последней к первой).

В прямом порядке я вывел:

Код:
program zapisi;
uses crt;
var f : text;
    s : string;
BEGIN
     clrscr;
     assign(f,'D:\KursPascal\zapisi.txt');
     reset(f);
     while not eof(f) do
     begin
     readln(f, s);
     writeln(s);
     end;
     close(f);
     readln;
END.
1.jpg
А вот как вывести что бы в обратном порядке?

Последний раз редактировалось Stilet; 20.04.2010 в 07:39.
mileshin вне форума Ответить с цитированием
Старый 20.04.2010, 07:43   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А в обратном например создаешь линейный список, в который вгоняешь из файла все строки, потом проходя по нему выводишь на экран но проходишь с конца в начало
Вот например работа со списком:
http://www.programmersforum.ru/showthread.php?t=47462
Ну или в принципе поищи динамический двунаправленный список такое не раз обсуждалось
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.04.2010, 08:36   #3
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Вот тебе еще ссылочка на страничку моего сайта... http://igor-bachin.narod.ru/Pages/pfolio3.htm Там в разделе "Динамические структуры данных. Двусвязные линейные списки" можешь качнуть любую программу с исходниками и посмотреть как работать со списками... Создавать список, добавлять элемент в список, удалять из списка, проход по списку, ну и т.п.
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 20.04.2010, 09:19   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
В файле хранятся порядковый номер, название товара и стоимость. Вывести на экран записи файла
очень сильно подозреваю, что в задании требовалось создать работу с ТИПИЗИРОВАННЫМ файлом!
А выдать записи типизированной файла проще всего используя позиционирование на нужную запись:
Код:
type 
    MyRec = record
      nomer : integer;
      Tovar  : string[50];
      Price   : extended;
    end;
var f : file of MyRec;
     r1  : MyRec;
     i, Cnt : integer;
begin 
   Assign(f,'MyFile.dat');
   Reset(f);
   Cnt := FileSize(f);
   for i:=Cnt downto 1 do  begin
      seek(f,i);
      Read(f, r1);
      WriteLn(r1.Nomer, r1.Tovar, r1.Price);
   end;   
   Close(f);
end.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите вывести строку на экран в обратном порядке(TASM .small) depocomp Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 13 21.05.2009 11:22
печать страниц в обратном порядке Олекса Microsoft Office Word 4 30.03.2009 09:45
В обратном порядке mari.ha Общие вопросы C/C++ 7 25.12.2008 21:36
Вывод кольцевого списка в обратном порядке parinoff Паскаль, Turbo Pascal, PascalABC.NET 5 22.11.2008 12:03