Мне нужен вывод етой проги я паскаль практически не знаю и не получается вывести с файлами не разбираюсь я хочу чтобы вы вывели упорядоченный список и вписали вывод в ету тему заранее спасибо во код:
program laba_4_a;
uses crt;
Type
R = Record{Создаем список и мини списки}
uzel:string[20];
ustrois:string[20];
nomer_u:integer;
kol_u:integer;
ves:real;
cena:real;
End;
PTItem = ^TItem;
TItem = Record
Info: R;
next: PTItem;
End;
TList = Record
first, last: PTItem;
Exists: Boolean;
End;
TActionType = Procedure(Var X: R);
Var
PlayList: TList;
r1: R;
f: FileOf R; {Создаем файловую переменную}
min_cena: Integer;
n, i, Choice: Integer; {Счётчики}Procedure InitList(Var L: TList);
Begin
L.first := nil; L.last := nil;
L.Exists := True;
End;
Procedure DestroyList(Var L: TList);{Уничтожаем список}Var p, T: PTItem; {Счётчики}Begin
p := L.first;
While p <> nilDoBegin
T := p;
p := p^.next;
dispose(T){Избавляемся от записи очищаем память}End;
L.Exists := False
End;
Procedure AppendList(Var L: TList;{присоединяем список}Var X: R);
Var p: PTItem;{счётчик}Begin
new(p);
p^.Info := X;
p^.next := nil;
If L.first = nilThen L.first := p
Else L.last^.next := p;
L.last := p;
End;
Procedure RemoveItem(Var L: TList; {Удаляем}
n: Integer);
Var p, r1: PTItem; {Счётчики}Begin
p := L.first;
While n > 1DoBegin
p := p^.next; Dec(n)
End;
r1 := p^.next;
p^ := r1^;
Dispose(r1); {Избавляемся от записи очищаем память}
r1 := nilEnd;
Procedure ForEachList(Var L: TList;{Для другова списка}
Action: TActionType);
Var p: PTItem;
Begin
p := L.first;
While p <> nilDoBegin
Action(p^.Info);
p := p^.Next;
End;
End;
Procedure WriteRec(Var X: R); Far; {Просмотр данных}BeginWith X Do
WriteLn(uzel, ' ', ustrois, ' ',
nomer_u, ' ', kol_u, ' ',
ves, ' ',cena);
End;
procedure sort (var L:Tlist; X:R);{Упорядочивает список}var temp:real;
p,r1,t1: PTItem; {Счётчики}begin
ClrScr;
p := L.first;
While p <> nilDoBeginwith p^.Info do temp:=kol_u;
r1:=p;
while r1 <> nildobeginwith r1^.Info doif (temp<kol_u) thenbegin
t1^.Info:=p^.Info;
p^.info:=r1^.Info;
r1^.Info:=t1^.Info;
end;
r1:=r1^.next;
end;
p := p^.Next;
end;
End;
Procedure WriteFile(Var X: R); Far;
Begin{Записывает список в файл процедура}
Write(f, X)
End;
beginrepeat;
clrscr; {очистка экрана}
gotoxy (1,10); {переводит курсор}
writeln ('1. Загрузить данные из файла ......');
writeln ('2. Просмотр данных ................');
writeln ('3. Сортировать данные .............');
writeln ('4. Сохранить данные ...............');
writeln (' ');
writeln ('0. Выход');
writeln ('Выберете 1-3:');
readln (Choice);
case Choice of2:
begin
ClrScr;
WriteLn(uzel, ' ', ustrois, ' ',
nomer_u, ' ', kol_u, ' ',
ves, ' ',cena);
ForEachList(PlayList, WriteRec);
ReadLn;
end;
4:
begin
Assign(f, 'FILE.DAT');{Открываем файл для записи}
ReWrite(f);
ForEachList(PlayList, WriteFile);
Close(f);
end;
1:
beginIf PlayList.Exists Then
DestroyList(PlayList);
Assign(f, 'FILE.DAT'); {Открываем файл для чтения}
Reset(f);
Whilenot Eof(f) DoBegin
Read(f, r1);
AppendList(PlayList, r1);
End;
Close(f);
end;
3:
begin
sort(PlayList,r1);
end;
end;
until Choice = 0;
If PlayList.Exists Then
DestroyList(PlayList);
end.
Lapp
6.05.2010 4:58
пожалуйста, ставь тэги (Правила Форума, п.5, и правила раздела Задачи, п.2). Исправлено.
where is thw cheepesr place to b
20.09.2021 1:28
Over The Counter Motilium
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.