Сначала свяжем файловую переменную с конкретным внешним файлом при помощи процедуры Assign. Откроем файл для записи посредством процедуры Rewrite. Признак конца последовательности чисел − ввод числа 0.
Program Example_83;
Var F: File Of Integer;
n: Integer;
Begin
Assign(F, 'DAN1.DAT');
{Связываем файловую переменную
с файлом на диске}
Rewrite(F); {Открываем файл для записи}
Writeln('Конец ввода чисел - 0');
Repeat {Пока не будет введен 0}
Writeln('Введите число ');
Readln(n) ;
{Если введено число, отличное от 0, то
записываем его в файл}
If n<>0 Then Write(F, n);
Until n=0;
{Если введен 0, то выходим из цикла}
Close(F); {Закрываем файл}
End.
Пример 2
В файле DAN1.DAT записаны целые числа (см. предыдущую задачу). Вычислить сумму элементов файла и результат вместе с исходными данными записать в файл DAN2.DAT.
Program Example_84;
VarF1, F2: File Of Integer;
{Файловые переменные}
S, N: Integer;
Begin{С файловой переменной F1 связываем
файл на диске}
Assign(F1, 'DAN1.DAT');
Reset(F1); {Открываем файл F1 для чтения}
Assign(F2,'DAN2.DAT') ;
{С файловой переменной F2 связываем
файл на диске}
Rewrite(F2) ;
{Открываем файл F2 для записи}
S:=0;
While Not EOf (F1) Do
{Проверка на конец файла F1}
Begin
Read(F1, N);
{Чтение элемента из файла F1}
S:=S+N; {Накопление суммы}
Write(F2, N);
{Запись элемента в файл F2}
end;
Write(F2, S); {Запись суммы элементов
в конец файла F2}
Write('Результат находится
в файле DAN2.DAT')
Close(F1); {Закрываем файл F1}
Close(F2); {Закрываем файл F2}
Readln;
End.