Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КНИГА_Учимся программировать TURBO PASCAL 7.doc
Скачиваний:
32
Добавлен:
19.08.2019
Размер:
1.62 Mб
Скачать

1.4. Процедуры ввода-вывода

Ввод и вывод в PASCAL осуществляется через файл. Мы рас­смотрим ввод и вывод через стандартные файловые переменные INPUT и OUTPUT, которые связаны с клавиатурой и экраном дисплея. Более подробную информацию о других возможностях смотрите в теме 8.

Ввод данных с клавиатуры производится двумя процедурами: READ и READLN. Обе процедуры могут считывать любое количество значений переменных, идентификаторы которых перечис­лены в круглых скобках через запятую.

Процедура READ производит ввод данных, не переводя при этом курсор на следующую строку. Например, при отработке опе­ратора по вводу трех целых чисел READ(A, В, С);

с клавиатуры вводятся числа через пробел, а затем нажимается клавиша < Enter>:

123 2345 -56 <Enter> Курсор при этом остается сразу за последней цифрой.

Процедура READLN производит ввод данных и перевод стро­ки. При отработке

READLN(A, В, С); с клавиатуры тоже вводятся числа через пробел, а затем нажима­ется клавиша <Enter>:

123 2345 -56 <Enter> , но после считывания трех чисел курсор переводится на следую­щую строку.

Процедуру READLN можно использовать без параметров, то­гда она производит только перевод строки.

Для вывода данных используются процедуры WRITE и WRITELN. Процедура WHITE производит вывод данных, не перево­дя курсора на следующую строку, a WRITELN курсор переводит.

При использовании этих операторов можно указывать число позиций, в которых нужно вывести значение: WRITE(J : 8, I : 12 );

Например, для того, чтобы сформировать и вывести на экран таблицу умножения, как на обложке школьных тетрадок, нужно написать так:

PROGRAM TABLE;

Var I, j : integer;

BEGIN

FOR I := 1 TO 10 DO

BEGIN

FOR J := 1 TO 5 DO

WRITE(' ', J : 2, '*', I: 2, '=', I*J : 3);

WRITELN

END;

WRITELN;

FOR I := 1 TO 10 DO

BEGIN

FOR J := 6 TO 10 DO

WRITE(' ', J:2, '*', I: 2,'=', I*J: 3);

WRITELN

END;

END.

Практические задания

1. Какие из приведенных записей могут служить идентификато­рами PASCAL 7.0?

АА_А_А

А%

А = В

567

'аЬВА'

DIV

[ CRC]

2. Какие из приведенных ниже фрагментов могут быть работа­ющими программами?

А)

BEGIN

BEGIN

WRITELN('PROGRAM ? ')

END.

C)

PROGRAM О_О;

BEGIN

WRITELN('PROGRAM ?')

END.

VAR;

B)

BEGIN

WRITELN('PROGRAM ? ')

END.

D)

PROGRAM О_О;

BEGIN

WRITELN('PROGRAM ?')

END.

3. Написать программу, которая для двух заданных углов опреде­ляет, являются ли они смежными.

4. Написать программу, которая определяет, принадлежит ли число N заданному интервалу [К, L].

5. Написать программу, которая позволяет вычислить банков­ский процент на вклады из расчета 18 % годовых.