ВУЗ:
Составители:
Рубрика:
32
для размещения линейного списка в динамической области ОП }
Beg_Spis := St; { Сохранение начального адреса}
While Not Eof (F_Input) Do {Цикл до конца файла}
begin
With St^.Info do begin {Оператор присоединения}
Read ( F_Input, nom, FIO); { чтение порядкового
номера и фамилии из файла в линейный список}
For i := 1 to 5 do Read ( F_Input, Ball[i] ); { То же
для всех 5 оценок}
Readln ( F_Input, Sum_ball ); { Чтение и запись
суммы баллов и переход
к новой строке файла}
end;
Sp:=St;{ Сохранение текущего указателя в предыдущем}
New (St); { Определение указателя на новую ячейку памяти}
Sp^.Ukaz := St; { Сохранение указателя на новую ячейку в
поле адреса предыдущей}
end; { Цикл по записям файла}
Sp^.Ukaz := NIL; { Запись в поле указателя последней
ячейки занятой списком памяти значения NIL }
End; { Конец процедуры
ввода и формирования списка}
Процедура вывода линейного списка на экран
Procedure OUTPUT_SPIS;
Var i: byte; { Описание локальных переменных }
Begin
St := Beg_Spis; { Установка начального указателя
линейного списка }
While St <> NIL do { Цикл до конца линейного списка }
begin
With St^.Info do
begin
Write (Nom,’ ’, FIO,’ ’);
For i := 1 to 5 do Write ( Ball[i]:3 );
для размещения линейного списка в динамической области ОП }
Beg_Spis := St; { Сохранение начального адреса}
While Not Eof (F_Input) Do {Цикл до конца файла}
begin
With St^.Info do begin {Оператор присоединения}
Read ( F_Input, nom, FIO); { чтение порядкового
номера и фамилии из файла в линейный список}
For i := 1 to 5 do Read ( F_Input, Ball[i] ); { То же
для всех 5 оценок}
Readln ( F_Input, Sum_ball ); { Чтение и запись
суммы баллов и переход к новой строке файла}
end;
Sp:=St;{ Сохранение текущего указателя в предыдущем}
New (St); { Определение указателя на новую ячейку памяти}
Sp^.Ukaz := St; { Сохранение указателя на новую ячейку в
поле адреса предыдущей}
end; { Цикл по записям файла}
Sp^.Ukaz := NIL; { Запись в поле указателя последней
ячейки занятой списком памяти значения NIL }
End; { Конец процедуры ввода и формирования списка}
Процедура вывода линейного списка на экран
Procedure OUTPUT_SPIS;
Var i: byte; { Описание локальных переменных }
Begin
St := Beg_Spis; { Установка начального указателя
линейного списка }
While St <> NIL do { Цикл до конца линейного списка }
begin
With St^.Info do
begin
Write (Nom,’ ’, FIO,’ ’);
For i := 1 to 5 do Write ( Ball[i]:3 );
32
Страницы
- « первая
- ‹ предыдущая
- …
- 30
- 31
- 32
- 33
- 34
- …
- следующая ›
- последняя »
