Если оператор присваивания реализует основную функцию обработки информации с помощью ЭВМ - преобразование данных, то вспомогательные функции реализуются операторами ввода и вывода. Рассмотрим простейшие операторы ввода и вывода в Паскале. Строго говоря, язык не имеет операторов ввода и вывода, а использует для этого специальные процедуры. Однако, традиционно такие простейшие процедуры рассматривают как операторы.
Оператор ввода (а точнее, процедура ввода) может вводить данные в оперативную память или из файла или с клавиатуры. При вводе с клавиатуры процедура имеет вид:
Read(<список переменных>); или
Readln(<список переменных>);
Список переменных представляет собой перечень имен переменных через запятую, в которые заносятся вводимые значения. Очевидно, что список значений и список имен должны соответствовать друг другу по типам и порядку следования элементов списков. Отличие в этих процедурах проявляется только при вводе данных из файла. Оно заключается в том, что при втором варианте после ввода выполняется переход на новую запись файла, даже если в текущей записи данные не кончились.
Вводу данных в блок схеме соответствует блок ввод:
Примеры:
Read(N); {программа ждет, пока не будет набрано число на клавиатуре и не нажата клавиша <Enter>, после чего переменная с именем N получит набранное значение}
Read(A,B,C); {необходимо набрать через пробел три числа и нажать <Enter>, первое попадет в ячейку с именем A и т.д.}
Нельзя в списке имен писать константы или выражения.
Если в программе требуется выполнить ввод данных с клавиатуры, предварительно следует предусмотреть команды вывода на экран запроса, какие параметры и в каком порядке пользователь должен вводить, например: