Задача:
Ниже приведен фрагмент программы. Какое число будет выведено на экран?
a:=5; b:=3; a:=a-b; if a>b then write(a+b) else write(b);
Решение:
Давайте пошагово проследим выполнение программы:
1. a:=5;
Переменной a присваивается значение 5.
Текущие значения: a = 5, b (не определено, но скоро будет).
2. b:=3;
Переменной b присваивается значение 3.
Текущие значения: a = 5, b = 3.
3. a:=a-b;
Переменной a присваивается результат вычитания текущего значения b из текущего значения a.
a = 5 - 3
a = 2
Текущие значения: a = 2, b = 3.
4. if a>b then write(a+b) else write(b);
Это условный оператор. Проверяется условие a > b.
Подставляем текущие значения: 2 > 3.
Это условие ложно (2 не больше 3).
Поскольку условие ложно, выполняется часть кода после else, то есть write(b).
Программа выведет на экран текущее значение переменной b.
Текущее значение b = 3.
Ответ:
3
