Примеры

Ввод данных – это процесс их передачи со внешних носителей информации или устройств ввода в ячейки оперативной памяти для дальнейшей обработки.

ПРОЦЕДУРЫ ВВОДА ДАННЫХ

 

Ввод данных со внешних устройств в объявленные в программе переменные осуществляется с помощью встроенных процедур ввода или чтения (от англ. read – читать).

 

Процедура ввода read имеет синтаксис

read (имя1, имя2, ..., имяN);

где read – имя процедуры, стандартный идентификатор;

имя1, имя2, ..., имяN – список ввода.

Важно:

В список ввода могут входить переменные целого, действительного, символьного или строкового типа.

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

Действие процедуры:

Программа приостанавливает свою работу и ждет, пока на клавиатуре будут набраны нужные данные.

Ввод символов сопровождается отображением их на экране.

Набранные символы запоминаются в буфере и передаются процедуре ввода только после нажатия клавиши Enter.

После нажатия клавиши Enter введенные значения присваиваются переменным, имена которых приведены в списке параметров процедуры read.

Буфер – это область памяти для временного хранения данных. Благодаря наличию буфера возможно редактирование данных во время их ввода.

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

 

 

Если список переменных насчитывает несколько переменных, то пользователь набирает значения через пробел или нажимает после каждого данного клавишу Enter.

 

Например, фрагмент программы:

var x0 : byte;

x, z : real;

y : integer;

begin

read (x0);

read (x, y, z);

...

end.

На экране должно быть, например:

5.25 –10 0.05

 

или,

 

5.25

–10

0.05

 

Для выполнения первой команды read (x0) мы вводим число соответственно типу byte – 32 – и нажимаем клавишу Enter. Дальше для выполнения команды read (x, y, z) есть два пути. Первый – ввести все данные через пробел и нажать клавишу Enter, второй – после каждого значения нажимать клавишу Enter.

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

Например, если I, K, L – целого типа, то в результате выполнения процедур:

read (I, K);

read (L);

 

и ввода с клавиатуры строки

 

5 10 15

 

переменные получат следующие значения:

I = 5, K = 10, L = 15.

 

Если команда read (L) отсутствовала бы, то число 15 было бы проигнорировано программой.

 

Процедура readln (от read line – читать строку) после ввода всех указанных в процедуре элементов списка осуществляет переход к следующей строке дисплея.

 

Это происходит потому, что процедура readln считывает все символы строки, включая символ завершения строки.

 

Символ завершения строки формируется во время нажатия клавиши Enter.

 

В противоположность процедуре readln, процедура read считывает все символы строки, кроме символа его завершения.

 

Процедура readln имеет синтаксис:

readln (имя1, имя2, ..., ім'яN);

где readln– имя процедуры, стандартный

идентификатор;

имя1, имя2, ..., ім'яN - список ввода.