Информатика -продвинутый курс


         

N значений переменных из списка


Имеются две встроенные процедуры (подпрограммы) ввода:
1)      read(<cписок переменных>); 2) readln(<cписок переменных>).
При выполнении процедуры read(xl,x2,...,xN) программа прерывается и компьютер ждет ввода с клавиатуры N значений переменных из списка х1, х2,..., xN. Эти значения - константы соответствующих типов - должны при вводе разделяться пробелами. Набор данных завершается клавишей ввода.
Процедура readin отличается от read только тем, что при завершении ввода курсор перемещается в начало следующей строки.
Пример.
var a,b:real; c:char; d:integer;
...
read(a,c,d,b);
...
Допустимый ввод: 83.14 k 200-7.15
Программа на Паскале может выводить на экран или на принтер значения числовых или символьных выражений. Имеются две процедуры вывода на экран:
1) write(<cписок выражений>); 2) writeln(<cписок выражений>).
Процедура write(xl,x2,...,xN) печатает на экране значения выражений из списка х1, х2, ..., xN. Процедура writeln отличается от write тем, что переводит курсор в начало следующей строки. Для вывода на принтер используются те же процедуры с добавлением служебного слова 1st перед списком выражений.
Пример: write(lst,'нет решений');
На бумаге будет напечатан текст «нет решений».
Для управления печатью используются форматы данных. Пусть х - переменная типа real. Если не использовать форматы, то значение х будет выводиться в «плавающей» форме (типа 1.654887892Е-04). Форматы позволяют напечатать вещественное число в естественной форме. Пусть m, n - целые числа. Процедура write(x:m:n) выводит на экран значение переменной х в виде десятичной дроби, причем m определяет общее число выводимых символов, включая цифры, точку и знак числа, n - количество цифр после точки. Если количество выводимых символов меньше m, то перед числом добавляются пробелы.
Пусть, например, х = 387.26. Следующая таблица демонстрирует влияние форматов на вывод значения х:
оператор                                           строка вывода
writeln('*',x)                                       * 3.8726000000E+02
writeln('*',x:8:3)                                 * 387.260
writeln('*',x:8:l)                                  * 387.3
Один формат - ширину поля вывода - можно использовать и для вывода значений выражений типов integer, boolean, char.

Содержание  Назад  Вперед