Чтобы значение переменной «a» после выполнения фрагмента программы стало равно 15, нужно разобраться, при каких условиях будет выполнена та или иная ветка условия if
. Рассмотрим фрагмент программы:
a := 20;
b := 5;
if (a < 1) . (a > b) then
a := a - 5
else
a := a + 5;
Переменная a
изначально равна 20, а переменная b
равна 5. Соответственно, условие (a > b)
будет истинным, так как 20 > 5. Теперь нужно выбрать логическую операцию, которая в сочетании с (a < 1)
даст нужный результат.
Анализ условий
(a < 1)
— это условие явно ложно, так как 20 не меньше 1.
(a > b)
— это условие истинно, так как 20 больше 5.
Для того чтобы попасть в ветку else
, нужно сделать так, чтобы все выражение (a < 1) . (a > b)
было ложным. В логике есть две основные операции, которые можно применить:
- Логическое И (AND):
(a < 1) AND (a > b)
- Логическое ИЛИ (OR):
(a < 1) OR (a > b)
Применение операций
Логическое И (AND): (a < 1) AND (a > b)
(a < 1)
ложно
(a > b)
истинно
- Логическое И даёт истину только тогда, когда оба условия истинны, поэтому результат будет ложным.
Логическое ИЛИ (OR): (a < 1) OR (a > b)
(a < 1)
ложно
(a > b)
истинно
- Логическое ИЛИ даёт истину, если хотя бы одно из условий истинно, поэтому результат будет истинным.
Выбор правильной операции
Чтобы значение переменной a
стало 15, нам нужно, чтобы выполнялась ветка else
:
else
a := a + 5;
При значении a
равном 20, после применения операции a := a + 5
, мы получим a = 25
, что нам не подходит. Следовательно, нам нужно сделать так, чтобы выполнялась ветка then
, которая уменьшит a
на 5:
then
a := a - 5;
Таким образом, правильная логическая операция для достижения значения a
, равного 15, будет логическое И (AND), так как оно делает условие ложным и позволяет выполнить ветку else
.
Итог
Правильная логическая операция, которую нужно вставить вместо многоточия, это AND
:
a := 20;
b := 5;
if (a < 1) AND (a > b) then
a := a - 5
else
a := a + 5;
Таким образом, после выполнения данного фрагмента программы значение переменной «a» станет равно 15.