ПРОЦЕДУРА ЗАПИСИ WRITE.

End.

Begin

ПРОЦЕДУРА ЧТЕНИЯ READ.

ВВОД-ВЫВОД ДАННЫХ.

ЛЕКЦИЯ № 14.

ТЕМА: «СТРУКТУРА ПРОГРАММЫ НА PASCAL. ЛИНЕЙНЫЕ ПРОГРАММЫ»

 

Решение самой простой задачи на ЭВМ не обходится без операций ввода-вывода информации. Ввод данных - это передача информации от внешнего носителя в оперативную память для обработки. Вывод - обратный процесс, когда данные передаются после обработки из оперативной памяти на внешний носитель.

В языке Pascal стандартным средством общения человека и ЭВМ являются определенные файлы input и output, которые являются параметрами программы. Программа получает входные данные из файла input и помещает результат обработки в файл output. Стандартно файлу input назначена клавиатура, а файлу output - экран монитора.

Процедура чтения read обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой.

Формат: read (список переменных допустимых типов, разделенных

запятыми);

Значения вводимых переменных набираются минимум через один пробел на клавиатуре и высвечиваются на экране. После набора данных для одной процедуры read нажимается клавиша ввода Enter. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка Pascal. Если соответствие нарушено, то возникают ошибки ввода-вывода.

Если в программе имеется несколько процедур read, данные для них вводятся потоком, т.е. после считывания значений переменных для одной процедуры read данные для следующей процедуры read набираются в той же строке, что и для предыдущей, до окончания строки, затем происходит переход на следующую строку.

Пример:

vara,b,sum1 : integer;

c,d,sum2 : real;

. . .

read(a,b);

read(c,d);

. . .

Набираем на клавиатуре: 18758 34 2.62Е-02 1.5Е+01.

После набора каждой пары данных нажимаем клавишу enter, т.е. 18758 34 enter2.62E-02 1.54E+02 enter.

Процедура чтения readln аналогична процедуре read, единственное отличие в том, что после считывания последней в списке значения для одной процедуры readln данные для следующей процедуры readln будут считываться с начала новой строки.

Например: . . .

readln(a,b);

readln(c,d);

. . .

После набора на клавиатуре значений для aи b курсор автоматически перейдет на новую строку, где будут набираться данные для cиd:

18758 34 enter

2.62E-02 1.54E+02 enter

Ввод значений каждой переменной выполняется следующим образом:

  1. Значение переменной выделяется как группа символов, расположенных между разделителями.
  2. Эти символы преобразуются во внутреннюю форму представления, соответствующую типу переменной.
  3. Значение записывается в ячейку памяти, определяемую именем переменной.

Процедура записи writeпроизводит вывод числовых данных, символов, строк и логических значений.

Формат: write(список вывода);

В отличии от списка ввода в операторах readи readlnсписок вывода может содержать не только переменные, но и константы и выражения. Вид печатаемой единицы данных определяется типом соответствующего выражения. Могут выводиться значения выражений типа integer, real, charи boolean, строки символов, заключенные в апострофы, и строковые константы, определенные в разделе const.

Например: write(8+5, sin(3.141), ‘SONATA’);

результат: 13 5.92657378955E-04 SONATA

|_____________|_________________|

17 позиций 17 позиций

Оператор записи writeln аналогичен процедуре write, но после вывода последнего в списке значения для текущей процедуры writelnпроисходит перевод курсора к началу следующей строки.

Формат: writeln( список вывода);

Оператор writeln без списка вывода используется для перехода к новой строке, если указывается после оператора write, или для пропуска пустой строки, если указывается после оператора writeln.

Например: writeln(8+5, sin(3.141));

writeln(‘SONATA’);

результат: 13 5.9265737895E-04

|_____________|________________|

17 позиций 17 позиций

SONATA