Операторы write и writeln. Процедуры вывода информации

 

Вы обратили внимание, что в программе были использованы операторы write и writeln. Английское слово write переводится - писать, а слово writeln происходит как сокращение от двух английских слов write - писать и line - строка.

Кроме операторов write и writeln мы говорим о процедурах вывода информации.

Что же такое процедура?

Понятие процедуры - одно из основных понятий Паскаля. Ему подобна подпрограмма на языке Бейсик.

 

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

 

Выше мы говорили об операторах вывода информации, хотя в Паскале, в отличие от Бейсика нет операторов вывода информации, а через служебные слова write и writeln происходит обращение к стандартной или встроенной процедуре вывода информации. Стандартная процедура не нуждается в предварительном описании, она доступна любой программе, в которой содержится обращение к ней. Вот почему обращение к write или writeln напоминает оператор PRINT - вывода информации на языке Бейсик.

Разница между оператором вывода и обращением к процедуре вывода состоит в том, что имя процедуры вывода, как и любой другой процедуры Паскаля не является зарезервированным словом, а, следовательно, пользователь может написать свою собственную процедуру с именем write или writeln. Но это очень редко используется на практике.

 

Таким образом, операторы write и writeln являются операторами обращения к встроенным процедурам вывода информации.

 

Обе эти процедуры выводят информацию на экран, если эта информация содержится в виде значений переменных, тогда достаточно в скобках в операторах write или writeln записать имена этих переменных, например: write(a), writeln(f). Если таких переменных несколько, то их записывают через запятую, например: write(a, b, c, d), writeln(e,f, g, h).

Если информацией являются слова, предложения, части слов или символы, тогда она заключается между знаками " ' " - апостроф, например:

write('Введите длину пути'),

writeln('Значение скорости равно')

Возможен одновременный вывод и символьной информации и значений переменных, тогда в операторе write или writeln они разделяются запятыми, например:

write('Значение температуры равно ', t),

writeln('Скорость равна ', v, ' при времени движения ', t).

Заметьте, в конце слов, перед апострофом оставлен пробел.

Для чего это сделано? Конечно, чтобы следующая числовая информация была разделена со словами пробелом.

В чем состоит отличие в работе процедур write и writeln?

 

Процедура write требует от следующих процедур ввода или вывода, информацию вводить или выводить ее на ту же строку (в одну строку).

 

Если в программе указан оператор write и за ним следуют еще операторы write или writeln, то выводимая ими информация будет присоединяться к строке информации первого оператора write.

 

Например: write('Сегодня и завтра будут ');

write('выходные дни ');

 

На экран выводится:

Сегодня и завтра будут выходные дни

 

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

write('Сегодня и завтра будут');

write('выходные дни');

Сегодня и завтра будутвыходные дни

 

Еще некоторые примеры: t:=20;

write('Время движения равно ');

write(t);

write(' секунд');

Время движения равно 20 секунд

a := 18; b := 12;

write('Сумма чисел равна ');

write(a+b);

write(', а произведение ');

write(a*b);

Сумма чисел равна 30, а произведение 216

 

Процедура writeln обеспечивает для следующих процедур ввода или вывода информации вводить или выводить ее с начала каждой новой строки.

 

В программе:

 

a := 25;

b := 17;

writeln('Сумма и разность чисел равны:');

writeln(a + b);

writeln(a - b);

 

На экране:

 

Сумма и разность чисел равны: