Для выполнения операций ввода-вывода служат четыре оператора:
Read, ReadLn, Write, WriteLn. Оператор чтения (Read) обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой.
Формат: Read (X1, Х2,.., Хn), где X1, Х2,.., Хn – переменные допустимых типов данных.
Значения X1, Х2,.., Хn набираются минимум через один пробел на клавиатуре пользователем и высвечиваются на экране. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка. Если в программе имеется несколько операторов Read, данные для них вводятся потоком, т. е. после считывания значений переменных для одного оператора Read данные для следующего оператора Read – набираются на той же строке, что и для предыдущего до окончания строки, затем происходит переход на следующую строку. Оператор чтения ReadLn аналогичен оператору Read, единственное отличие заключается в том, что после считывания последнего в списке значения для одного оператора ReadLn данные для следующего оператора ReadLn будут считываться с начала новой строки.
|
|
Оператор записи (Write) производит вывод данных.
Формат: Write (X1, Х2,.., Хn), где X1, Х2,.., Хn - выражения типа integer, byte, real, char, Boolean и т.д.
Пример: Write (125); (выражение представлено значением) Write (А+В–С); {выводится результат выражения).
Оператор Write дает возможность выводить значения переменных следующими способами.
1. Вывод десятичного представления величины I начиная с позиции расположения курсора (I):
Значение I | Выражение | Результат |
Write(I) | ||
Write(I) | ||
Write(I, I, I) | ||
Write('Значение I = ', I) | Значение I = 318 |
2. Вывод десятичного представления величины I в крайние правые позиции поля шириной р (I:р):
Значение I | Выражение Write(I:6) Write(I:10) | Результат ַַַ134 ַַַַַַַַַ5 |
Write(I+I:7) | ַַַַ624 |
Где ַ – пробел.
3. Вывод десятичного представления величины I в крайние правые позиции поля шириной р и дробной части числа шириной q (I:р:q):
Значение I | Выражение | Результат |
511.04 | Write(I:8:4) | 511.0400 |
-46.78 | Write(I:7:2) | ַ-46.78 |
-46.78 | Write(I:9:4) | ַ-46.7800 |
Оператор записи WriteLn аналогичен оператору Write, но после вывода последнего в списке значения для текущего оператора WriteLn происходит перевод курсора к началу следующей строки. Оператор WriteLn, записанный без параметров, вызывает перевод строки.
При недостатке количества позиций для вывода число или текст выводятся полностью, а формат игнорируется, кроме формата вывода дробной части числа. Если формат вывода не задавать, то значения целых и строковых переменных выводятся полностью, а вещественных – с количеством цифр, соответствующих типу переменной, например,
a:=5.12345678912345678912345; Writeln('а=', a); выведет на экран надпись:
a:=5.12345678912346.