Совместимость в операциях присваивания

Совместимость по присваиванию необходима, если имеет место присваивание значения, например, в операторе присваивания или при передаче значений-параметров в подпрограмму.

Объект хранения данных, имеющий тип Т1, является совместимым по присваиванию со значением, имеющим тип Т2 (то есть допустимо Т1:=Т2), если выполняется одно из следующих условий:

§ Т1 и Т2 имеют тождественные типы (правила определения тождественности см. в пункте Параметры-переменные);

§ Т1 и Т2 являются совместимыми порядковыми типами, и значения типа Т2 попадают в диапазон возможных значений Т1;

§ Т1 и Т2 являются вещественными типами, и значения типа Т2 попадают в диапазон возможных значений Т1;

§ Т1 является вещественным типом, а Т2 является целочисленным типом;

§ Т1 и Т2 являются строковыми типами;

§ Т1 является строковым типом, а Т2 является символьным типом.

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

Операторы вызова процедуры

Оператор вызова процедуры простой оператор, который инициализирует формальные параметры процедуры фактическими (также этот процесс называют передачей параметров в процедуру), и передаёт ей управление (см. пункт Параметры).

Синтаксис оператора вызова процедуры:

Ид_процедуры (Фактич_парам1, Фактич_парам2,...);

Стандартные процедуры

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

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

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

Writeln(Зн1, [,Зн2,..., Знn]) – данная процедура является расширением процедуры Write. После выполнения процедуры Write процедура Writeln переводит курсор на следующую строку.

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

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

program Wrt;

Var

r:real; i:integer;

s:string[10];

Begin

i:=12;

r:=100;

s:= 'r=';

write(s,r);

writeln('i=',i);

write(i+1,r+i);

writeln();

write(i,', ',i);

End.

При выполнении программы на экране будут появляться выводимые процедурами вывода значения (таблица 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  

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



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