1. Так как программа рассчитана на работу с файлами, то в ней предусмотрено описание файловой переменной f1и строковой файловой переменной sv типа string.
2. Имя строкового выражения sv должно быть введено с клавиатуры ( в нашем случае - это WrRead.rez). Здесь расширение rezподчёркивает, что файл предназначен для результата.
4. Программа построена так, что при К=1 открывается файл для записи (rewrite f1),куда вводятся значения i, xs[i], ys[i].
5. При К>1 открывается файл f1для чтения (resetf1), из которого считываются сохранённые значенияi, xs[i], ys[i]предыдущего набора для выполнения вычислений с новым набором данных и последующей записью их в файл f1.
6. Результат работы программы хорошо иллюстрируется по данным тестирования (см. выше).
Если открыть для чтения несуществующий файл, произойдет сбой программы. Обычно такие ошибки автоматически отслеживаются программой, и если что-то не так, пользователь получает сообщение системы, а программа аварийно завершается. Это не слишком хорошо, поскольку сообщение скорее всего будет на английском, а кроме того программа не должна "выпадать" в систему даже при ошибках. Поэтому мы отключаем автоматическую проверку ошибок ввода-вывода (директива {$I-}) перед тем, как открыть файл, и включаем ее снова (директива {$I+}) сразу после оператора Reset. Однако, мы должны знать, открыт ли файл на самом деле, а пользователь должен получить адекватное сообщение об ошибке, если она произошла. Код ошибки ввода-вывода после каждой операции содержится в системной переменной IOResult, и она как обычно равна нулю, если операция закончилась нормально. Чтобы убедиться, что файл действительно открыт, мы вводим логическую переменную bFileIsOpen, которой присваиваем FALSE, если IOResult не равно нулю, а значит, при открытии F произошла ошибка. Теперь мы закроем файл данных, только если он на самом деле был открыт.