Ниже приведена программа, записанная на пяти языках программирования.
Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(2, 5); (–2, 4); (4, 1); (–11, –5); (3, –7); (1, 8); (8, 2); (3, 0); (23, 1).
Сколько было запусков, при которых программа напечатала «YES»?
РЕШЕНИЕ
Определим, что же делает программа. Рассмотрим алгоритмический язык.
если s < -2 или не t < 4
то вывод "YES"
иначе вывод "NO"
все
Имеем условие : если s < 2 или t >= 4 (убрали отрицание), если выполняется хотя бы одно неравенство, результатом будет "YES", если не выполняется, то "NO".
Определим какой результат будет выдавать программа для всех s и t данных в условиях.
1) (2, 5)
2 < 2 ложь
5 >= 4 истина
Результат "YES"
2) (–2, 4)
-2 < 2 истина
4 >= 4 истина
Результат "YES"
3) (4, 1)
4 < 2 ложь
1 >= 4 ложь
Результат "NO"
4) (–11, –5)
-11 < 2 истина
-5 >= 4 ложь
Результат "YES"
5) (3, –7)
3 < 2 ложь
-7 >= 4 ложь
Результат "NO"
6) (1, 8)
1 < 2 истина
8 >= 4 истина
Результат "YES"
7) (8, 2)
8 < 2 ложь
2 >= 4 ложь
Результат "NO"
8) (3, 0)
3 < 2 ложь
0 >= 4 ложь
Результат "NO"
9) (23, 1)
23 < 2 ложь
1 >= 4 ложь
Результат "NO"
Результат "YES" программа напечатает 4 раза
ОТВЕТ 4