Прочие стандартные процедуры

Процедуры ввода

End.

Begin

Var

r:real; i:integer;

s:string[10];

i:=12;

r:=100;

s:= 'r=';

write(s,r);

writeln('i=',i);

write(i+1,r+i);

writeln();

write(i,', ',i);

При выполнении программы на экране будут появляться выводимые процедурами вывода значения (таблица 4).

Таблица 4 – Пошаговое выполнение процедур вывода

Выполняемый оператор Экран программы  
 
write(s,r); r=1.0000000000E+02  
writeln('i=',i); r=1.0000000000E+02i=12  
write(i+1,r+i); r=1.0000000000E+02i=12 13 1.1200000000 E+02  
writeln(); r=1.0000000000E+02i=12 13 1.1200000000 E+02  
write(i,', ',i); r=1.0000000000E+02i=12 13 1.1200000000 E+02 12, 12  

Read(Пр1, [,Пр2,..., Прn ]) – считывает одно или более значений из текстового файла в одну или более переменных.

Каждый параметр Пр№ является переменной символьного, строкового, целого или вещественного типа.

Процедура останавливает выполнение программы до тех пор, пока пользователь не введёт с клавиатуры требуемое количество значений и нажмёт <Enter>. Числовые значения при вводе должны разделяться пробелом (<Space>) или окончанием строки (клавиша <Enter>). При считывании строковых и символьных значений символ пробел считается частью вводимой строки, а не разделительным символом.

Readln(Пр1, [,Пр2,..., Прn]) – данная процедура является расширением процедуры Rеаd. После выполнения процедуры Rеаd процедура Rеаdln делает пропуск всех введённых с клавиатуры символов до начала следующей строки.

Пример использования процедур ввода:

Рассмотрим по шагам выполнение следующей программы:

program Rd;

var

r:real; i,i2:integer; c: char; s:string[3];

begin

read(c,r,i,i2);

read(i);

readln(s,r);

read(i);

end.

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

Таблица 5 ­– Пошаговое выполнение процедур ввода

Выполняемый оператор Вводимое пользователем с клавиатуры Состояние переменных
r i i2 c s
read(c,r,i,i2); 234.5 3 22<Enter> 34.5     ’2’ ’’
33 101<Enter> 34.5     ’2’ ’’
read(i); программа не останавливается для ввода данных 34.5     ’2’ ’’
readln(s,r); st2.25 2.3 13<Enter> 0.25     ’2’ ’st2’

Окончание таблицы 5

Выполняемый оператор Вводимое пользователем с клавиатуры Состояние переменных
read(i); 2.5<Enter> Ошибка: invalid numeric format (попытка записать вещественное число в переменную целого типа)

Процедура Ехit – позволяет немедленно выйти из текущего блока (процедуры, функции или программы).

Процедура Раndомizе – инициализирует генератор случайных чисел.

Функция Random [ (Range: Word)]: word – возвращает случайное число, равномерно распределённое в диапазоне от 0 до значения Range. Если генератор случайных чисел не инициализирован, то при последовательном обращении к данной функции будет возвращаться псевдослучайная последовательность значений (т. е. при каждом новом запуске программы эта последовательность не изменится).

Рассмотренного в предыдущих разделах достаточно, чтобы составить полноценную программу решения задачи.

В качестве примера разработаем программу для решения следующей задачи:

Даны катеты прямоугольного треугольника a и b. Найти его гипотенузу c и периметр P.

Для решения задачи необходимо припомнить формулы вычисления гипотенузы с и периметра Р:

,

.

Текст программы на языке Pascal выглядит следующим образом:

program Lin;

var

a,b,c:real;

P:real;

begin

writeln('введите длины двух сторон треугольника');

readln(a,b);

c:=sqrt(sqr(a)+sqr(b));

P:=a+b+c;

writeln('гипотенуза-',c,' периметр-',P);

end.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: