Ответ:
a = 3
Объяснение:
Рассмотрим поэтапно:
a : = 10;
b := 3;
1. Иначе говоря, тут мы просто присваиваем значения переменным, то есть а равно 10, b равно 3.
if a > b then b := b + 12
else a := a - 7;
2. Здесь у нас появляется условие, которое звучит словами так:
Если А больше B, тогда B равно B + 12, в противном же случае (если А не больше B) А равно А - 7.
Поскольку А больше B, то выполняется только первая часть условия, то есть b := b + 12, после чего теперь b равно 15.
if a > b then a := a + 12
else a := a - 7;
3. Теперь у нас повторяется условие, но меняется результат условие и, поскольку предыдущее условие изменило b, то и переменные отличаются:
Если А больше B тогда а равно А + 12, в противном же случае (если А не больше B), тогда А равно А - 7.
Вначале функции А действительно было больше B, но после результата первого условия B равно 15, а значит A не больше B теперь, поэтому выполняется только вторая часть условия, то есть a := a - 7, то есть а = 10 - 7 = 3.
Надеюсь, всё понятно.