треба видаляти по-іншому}
p2 ^. adr:=p1 ^. adr; {P2 стоїть перед видаляється, в його адресний поле записуємо адресу елемента наступного за видаляється}
p1 ^. adr:=nil; {Видаляється посилалася в нікуди}
dispose (p1); {І видаляємо його}
p1:=p2 ^. adr; {P1 ставимо на елемент який стояв за видаляється}
end;; (p2); {Створюємо новий елемент} 2 ^. adr:=nil; {Посилалася його в нікуди, т до він буде останнім в списку}
p2 ^. x:=sum; {В його числове поле записуємо суму}
p1:=first; {Встаємо на початок списку}
while p1 ^. adr <> nil do {знаходимо}
p1:=p1 ^. adr; {Останній елемент списку} ^. adr:=p2; {І останній посилатися на новий створений елемент}
writeln («posle»);
p1:=first; {Встаємо на початок списку}
while p1 <> nil do begin {поки не кінець списку}
write (p1 ^. x, «»); {Виводимо число елемента списку на екран}
p1:=p1 ^. adr; {Переходимо на наступний елемент}
end;;;; clrscr; randomize; (T, «text. Txt»); {Зв'язування файлової змінної t з файлом на диску під ім'ям що в лапках}
{$ i-} reset (t); {$ I +} {намагаємося відкрити текстовий файл, при відключеній помилку введення виведення}
if ioresult <> 0 then begin {якщо файл не вдалося відкрити, т е його немає}
rewrite (t); {Створюємо його}
for i:=1 to n do begin {n=10, значить у файл запишеться 10 чисел}
ch:=random (10); {Генеруємо число}
writeln (t, ch); {Записуємо в файл}
end;
close (t); {Закриваємо файл, т е ставимо відмітку про кінці файлу}
end;
reset (t); {Відкриваємо його заново}
writeln («ishodnie chisla»); {І} not seekeof (t) do begin {виводимо} (t, ch); {На} (ch, «»); {Екран};;;; {Очікування натискання клавіші} {повторювати поки не натиснута клавіша 5}
writeln («1: massiv»); {Висновок}
writeln («2: file»); {Користувальницького}
writeln («3: spisok»); {Меню}
writeln («4: clrscr»); {На}
writeln («5: exit»); {Екран}
readln (v); {Читання клавіші}
case v of
: mass (a); {Якщо натиснута клавіша 1, то виклик процедури з масивом}
: fill (f); {2 - з файлом}
: spisok; {3 - зі списком}
: clrscr; {4 - очищення екрана}
end; v=5; {Якщо була натиснута клавіша 5, то вихід з програми}.
Висновок
Не важко помітити, що як при роботі з масивом, так і з типізованим файлом і з динамічним списком використовувався один і той же алгоритм обробки. Але також видно і деякі відмінності, пов'язані зі специфікою роботи в тому чи іншому середовищі. Оскільки масив цілком зберігається в пам'яті, то щоб вибрати пару елементів з масиву по...