Правила перевода в python
Логическая операция | python |
Отрицание ¬ | not() |
Логическое умножение ∧ | and |
Логическое сложение ∨ | or |
Следование X ⟶ Y | x <= y |
Равносильность ≡ | == |
Поразрядная коньюкция & | & |
Вид 1. Координатная плоскость
Для какого наибольшего целого числа А формула
((x ≤ 9) →(x ⋅ x ≤ A)) ⋀ ((y ⋅ y ≤ A) → (y ≤ 9))
тождественно истинна, то есть принимает значение 1 при любых целых неотрицательных x и y?
for a in range(0,300): ok = 1 for x in range(0,300): for y in range(0,300): if ((x <= 9) <= (x * x <= a)) and ((y*y <= a) <= (y <= 9)) == 1: pass else: ok = 0 if ok == 1: print(a)
Ответ 99.
Вид 2. Побитовая коньюкция
Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n.
Так, например, 14 & 5 = 11102 & 01012 = 01002 = 4. Для какого наименьшего неотрицательного целого числа А формула
x & 29 ≠ 0 → (x & 17 = 0 → x & А ≠ 0)
тождественно истинна (т. е. принимает значение 1 при любом неотрицательном целом значении переменной x)?
for a in range(0,300): ok = 1 for x in range(0,300): if ((x & 29 != 0) <= ((x & 17 == 0) <= (x & a != 0))) == 1: pass else: ok = 0 if ok == 1: print(a)
Ответ 12
Вид 3. Числовые отрезки
На числовой прямой даны два отрезка: P = [10, 29] и Q = [13, 18].
Укажите наибольшую возможную длину отрезка A, для которого выражение
((x ∈ A) → (x ∈ P)) ∨ (x ∈ Q)
тождественно истинно, то есть принимает значение 1 при любом значении переменной х.
l = 0 for a1 in range(0,300): for a2 in range(a1,300): ok = 1 for x in range(0,300): if (((a1<=x<=a2)<=(10<=x<=29)) or (13<=x<=18)) == 1: pass else: ok = 0 if ok == 1: #print(a1, ' - ', a2) if a2 - a1 > l: l = a2 - a1 print(l)
Ответ 19
Вид 4. Функция Дел
нужно просто через оператор def создать функцию на проверку делимости
Обратить внимание в 15 задаче
- при использовании функции дел следим что бы передавать в него данные без нуля т.е. в renge, берем не с 0, а с 1.
- проверку делаем от 0 до 300 если нужно проверять положительные числа. Делаем проверку от -200 до 200 если проверяем при любых вещественных x
Пример на вещественные числа
На числовой прямой задан отрезок A. Известно, что формула
((x ∈ A) → (x2 ≤ 81)) ∧ ((y2 ≤ 36) → (y ∈ A))
тождественно истинна при любых вещественных x и y. Какую наибольшую длину может иметь отрезок A?
l = 0 for a1 in range(-50,50): for a2 in range(a1,50): ok = 1 for x in range(-50,50): for y in range(-50,50): if ((a1<=x<=a2) <= (x*x <= 81)) and ((y*y <= 36) <= (a1<=y<=a2)) == 1: pass else: ok = 0 if ok == 1: #print(a1, ' - ', a2) if a2 - a1 > l: l = a2 - a1 print(l)
ответ 18