Как организован ввод-вывод данных с терминального устройства? Для начала (кто не знает), определим терминальное устройство. Терминальное устройство — это клавиатура, дисплей, т.е. то, с чем пользователь обычно работает. Какие существуют операторы ввода вывода Паскаль?
Ввод данных Паскаль:
Как ввести данные в Паскале? Очень легко и просто! Ввод исходных данных в Паскале осуществляется процедурой readln:
readln(b1,b2,…,bk)
В этом примере процедура readln осуществляет чтение k значений исходных данных и присваивает эти значения переменным b1, b2,…, bk с переходом на новую строку (похожая процедура read отличается от readln отсутствием перехода на следующую строку). Когда мы вводим данные в Паскале, происходит своеобразное преобразование внешней формы во внутреннюю, которую определяет тип переменных.
Переменные, входящие в состав списка ввода, могут относиться к разным типам: целому, действительному, символьному. Однако чтение логических данных не допускается в Паскале. Исходные данные (т.е. их значения) отделяются друг от друга нажатием клавиши Enter и Tab, пробелами (при вводе данных недопустимо разделять числа запятыми).
Вывод данных Паскаль:
Теперь расскажем о выводе данных в Паскале. Чтобы вывести на экран результат работы вашей программы, обычно пользуются двумя процедурами:
write(b1,b2,…bk) — осуществляет вывод значений переменных b1, b2,…, bk в строку экрана.
writeln(b1,b2,…, bk) — производит как вывод данных на экран, так и переход к началу следующей строки.
Процедура writeln может использоваться без параметров, тогда просто производится пропуск исходной строки и переход к началу следующей. В списке вывода переменные могут иметь нескольких типов: целый, действительный, символьный или булевский. К элементам списка вывода относятся еще выражения и строки. Форма представления значений в поле вывода соответствует типу переменных и выражений:
- целочисленные величины выводятся как целые десятичные числа,
- величины действительного типа представляются как действительные десятичные числа с десятичным порядком,
- величины символьного типа и строки выводятся в виде символов,
- величины логического типа — в виде true и false (логические константы).
Оператор вывода создает возможность задать ширину поля вывода для каждого элемента списка вывода, которые будут иметь вид: А:К, где А — строка или выражение, К — выражение либо целочисленная константа. Возникают две ситуации при этом:
- В случае, когда выводимое значение занимает в поле вывода меньше позиций, чем К, перед ним устанавливаются пробелы.
- Когда же значение не помещается в рамках поля К, то этому значению отводится нужное количество позиций.
Элемент списка вывода для величин действительного типа может иметь вид: А:К:М, где А — выражение действительного типа или переменная, К — ширина поля вывода (выражение или константа), М — число цифр дробной части выводимого значения(выражение или константа). В данной ситуации действительные значения будут выведены как десятичное число с фиксированной точкой. Представим пример записи операторов вывода:
program vyvod;
var rM, rN: real;
iS, iT:integer;
bZ, bL: boolean;
chY, chD, chH, chX: char;
begin
. . .
writeLn(rM, rN:10:2);
writeLn(iS, iT:8);
writeLn(bZ, bL:8);
writeLn(chY, chD, chH, chX);
end.