Выполнение инструкции присваивания

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

1. Сначала вычисляется значение выражения, которое находится справа от символа инструкции присваивания.

2. Затем вычисленное значение записывается в переменную, имя которой стоит слева от символа инструкции присваивания.

Например, в результате выполнения инструкций:

- i:=0; — значение переменной i становится равным нулю;
- а:=b+с; — значением переменной а будет число, равное сумме значений переменных ь и с;
- j :=j+1; — значение переменной j увеличивается на единицу.

Инструкция присваивания считается верной, если тип выражения соответствует или может быть приведен к типу переменной, получающей значение. Например, переменной типа real можно присвоить значение выражения, тип которого real или integer, а переменной типа integer можно присвоить значение выражения только типа integer.

Так, например, если переменные i и п имеют тип integer, а переменная d — тип real, то инструкции

i:=n/10; i:=1.0;

неправильные, а инструкция

d:=i+1; правильная.

Во время компиляции выполняется проверка соответствия типа выражения типу переменной. Если тип выражения не соответствует типу переменной, то компилятор выводит сообщение об ошибке:

Incompatible types ... and ...

где вместо многоточий указывается тип выражения и переменной. Например, если переменная п целого типа, то инструкция n: = m/2 неверная, поэтому во время компиляции будет выведено сообщение :

Incompatible types 'Integer' and.'Extended'.