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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.06.2010, 23:26   #1
Vers12344
Новичок
Джуниор
 
Регистрация: 05.06.2010
Сообщений: 1
По умолчанию Вывод программы нужен

Кто - нибудь может исправить программу, а то не могу получить результат. Пожалуйста. Нужен в основном вывод.

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: File Of 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 <> nil Do Begin
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 = nil Then 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 > 1 Do Begin
p := p^.next; Dec(n)
End;

r1 := p^.next;
p^ := r1^;
Dispose(r1); {Избавляемся от записи очищаем память}
r1 := nil
End;

Procedure ForEachList(Var L: TList;{Для другого списка}
Action: TActionType);
Var p: PTItem;
Begin
p := L.first;
While p <> nil Do Begin
Action(p^.Info);
p := p^.Next;
End;
End;


Procedure WriteRec(Var X: R); Far; {Просмотр данных}
Begin
With 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 <> nil Do Begin
with p^.Info do temp:=kol_u;
r1:=p;
while r1 <> nil do begin
with r1^.Info do if (temp<kol_u) then
begin
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;

begin
repeat;
clrscr; {очистка экрана}
gotoxy (1,10); {переводит курсор}
writeln ('1. Загрузить данные из файла ......');
writeln ('2. Просмотр данных ................');
writeln ('3. Сортировать данные .............');
writeln ('4. Сохранить данные ...............');
writeln (' ');
writeln ('0. Выход');
writeln ('Выберете 1-3:');
readln (Choice);
case Choice of
2:
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:
begin
If PlayList.Exists Then
DestroyList(PlayList);

Assign(f, 'FILE.DAT'); {Открываем файл для чтения}
Reset(f);
While not Eof(f) Do Begin

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.
Vers12344 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен результат программы... Катюшенька Помощь студентам 1 17.05.2010 09:53
Вывод в резидентной части программы bruk_bond Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 12 18.12.2009 11:29
Нужен помощник в написании программы Bazilizk Фриланс 2 12.08.2009 10:36
Нужен вывод сообщения на экран: ну типа создать файл? Максим-2 Общие вопросы Delphi 7 28.07.2007 14:45