Правила перевода в 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
