ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »