begin read(X); read( ) end,
а семантика оператора read(X) может быть описана следующим составным оператором:
begin X := Голова(Input2); Input1 := Input1 Голова(Input2); Input2 := Хвост(Input2) end.
Напомним (см. п. 1.1.1), что по определению и для любой непустой последовательности .
Для того, чтобы не возникало ошибки из-за попытки чтения при пуcтой последовательности Input2, в языке имеется стандартная функция Eof с результатом логического типа, выдающая значение True, если все значения входного файла уже прочитаны, т.е. если Input2 -- пустое слово, и значение False, если .
Печать значений (их запись в выходной файл Output) осуществляется с помощью оператора обращения к стандартной процедуре write, синтаксическая диаграмма которого изображена на рис. 2.8.
write (OutExpression {, OutExpression})
Рис. 2.8. Оператор обращения к стандартной процедуре вывода
Действие оператора обращения к процедуре write состоит в последовательном добавлении в конец выходной последовательности значений выражений, перечисленных в качестве фактических параметров.
Оператор write (E, ), где E -- выражение, а -- непустая последовательность выражений, равносилен составному оператору