Виконання інструкції присвоювання

Інструкція присвоювання виконується наступним чином:

  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 '.