Инструкция
присваивания выполняется следующим образом:
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’.