Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 139.docx
Скачиваний:
4
Добавлен:
30.04.2022
Размер:
206.28 Кб
Скачать

3.7. Организация ввода – вывода

Для ввода исходных данных, над которыми должны выполнятся преобразования в программе, используются операторы READ и READLN. Можно вводить данные целого, вещественного и символьного типа. Разделителем между числами служит пробел или ENTER (конец строки ). Символы при вводе не разделяются. Оператор READLN осуществляет переход к началу новой строки после ввода значения последней переменной в списке.

Вывод данных разрешает выводить значения всех стандартных типов. Общий вид операторов вывода значений целого, логического, символьного и строкового типа:

WRITE ( a : m); (1)

WRITELN ( a: m); (2)

где а – выводимое выражение, m – переменная или выражение целого типа; означает общее число позиций для вывода. Оператор (2) в отличие от (1) осуществляет переход к началу новой строки после окончания вывода значения последней переменной в списке объектов вывода.

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

WRITE (b : m : n); (3)

WRITELN( b : m: n); (4)

где b – выводимое выражение, m – общее число позиций, n – количество позиций после запятой.

Контрольные вопросы и упражнения

1. Ответить на следующие вопросы:

а) можно ли вводить с помощью оператора READ значения булевского типа?

б) почему параметрами процедуры ввода READ могут быть только переменные, а не числа или выражения?

в) если в качестве исходных данных задано пять чисел, то можно ли ввести пятое из них, не вводя первые четыре?

2. Что получится в результате выполнения операторов:

а) write (‘A’:3,2:1); writeln (5*3.2);

б) writeln (5<6,5<=6:8); writeln (‘КОНЕЦ’);

в) writeln (5*3.3:4:1, ‘РЕЗУЛЬТАТ’) ?

3. Что будет напечатано программой:

а) program aba;

var a,b:integer;

` begin

read (a,b,a);

writeln (a,b,a)

end.

если для ввода заданы числа 1, 2 и 3?

б) program print1;

var x:integer;

begin

x:=2; writeln(’x+1’)

end.

в) program sq;

var b,c,d:real;

begin

read(b,c);

d:=sqrt(sqr(b) – 4*c);

writeln(’x1=’, (- b + d)/2, ’ x2=’,(- b – d)/2)

end.

если в качестве исходных данных заданы числа 1.0 и -2.0?

г) program time; var fi:real; h,m:integer; begin read

(fi); h:=trunc(fi/30); m:=trunc

(fi – 30*h/0.5); writeln (h,’_’, m) end.

Записать текст этой программы в более наглядной форме

д) program print2;

var x:real; t:boolean;

begin

read(x); t:= x< round(x);

read(x) y:= t and (x<trunc(x));

writeln (t)

end.

если для ввода заданы числа 1.5; -0.8?

  1. Найти ошибки в каждой из следующих программ:

а) program A;

const d = 5;

begin

d:= sqr(d);

writeln(‘d*2=’,d)

end.

б) program B;

const k = true;

var x:real;

begin

read(x); writeln (ord(x) = k)

end.

в) program C;

var a,b,c : integer;

begin

read(a,b); writeln( (a+b+c)/3)

end.

г) program D;

var x:real;

begin

read(x);

y:=sqrt(x) + 1;

writeln(y)

end.

д) program E;

const B = 2.5;

var a,b,c : real;

begin

read(a,c); writeln(a*c > b)

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]