Шешімі: Подсчёт запусков программы
Ниже приведена программа, записанная на пяти языках программирования. При каждом запуске вводятся значения переменных $s$ и $t$. Программа выводит «YES», если выполняется условие $s < -2$ или не выполняется условие $t < 4$, и «NO» в противном случае. Было проведено 9 запусков программы, при которых в качестве значений переменных $s$ и $t$ вводились следующие пары чисел: $(2, 5)$; $(-2, 4)$; $(4, 1)$; $(-11, -5)$; $(3, -7)$; $(1, 8)$; $(8, 2)$; $(3, 0)$; $(23, 1)$. Сколько было запусков, при которых программа напечатала «YES»?
1s = int(input()) 2t = int(input()) 3if (s < -2) or not (t < 4): 4 print("YES") 5else: 6 print("NO")
Шешімін қадамдап көрсету
4 қадамПреобразуем отрицание условия: неравенство не является истинным, если $t \geq 4$.
$$\neg(t < 4) \Leftrightarrow t \geq 4$$Программа печатает «YES», если выполняется хотя бы одно из условий: $s < -2$ или $t \geq 4$.
$$(s < -2) \lor (t \geq 4)$$Проверяем пары: $(2, 5)$ — YES; $(-2, 4)$ — YES; $(4, 1)$ — NO; $(-11, -5)$ — YES; $(3, -7)$ — NO; $(1, 8)$ — YES; $(8, 2)$ — NO; $(3, 0)$ — NO; $(23, 1)$ — NO.
Подсчитываем количество запусков с результатом «YES».
$$1 + 1 + 1 + 1 = 4$$Где здесь ошибаются
Қате преобразуют условие not (t < 4) в t < 4.
Считают только пары, для которых одновременно выполняются оба условия, хотя между ними стоит операция «или».