Информатика с Викторией Ланской @infa_vikusya
ЗАДАНИЕ №15 | ШПАРГАЛКА
Задание №1 (ТИП: ДЕЛ)
Выражение ДЕЛ(n, m) обозначает следующее: «натуральное число n делится без остатка
на натуральное число m». Для какого наименьшего натурального числа А формула
(ДЕЛ(x, А) ∧ ДЕЛ(x, 8)) → (¬ДЕЛ(x, 8) ∨ ДЕЛ(x, 240)) тождественно истинна (то есть
принимает значение 1 при любом натуральном значении переменной х)?
def F(x, A)
A):
return ((x % A == 0
0)) and (x % 8 == 0
0))
)) <= ((x % 8 != 0
0)) or (x % 240 == 0
0))
))
(1,
for A in range (1, 1000
1000):
):
(1,
if all(F(x, A) for x in range (1, 10000
10000)):
)):
print(A)
break
>>> 240
Задание №2 (ТИП: КОНЪЮНКЦИЯ)
Выражение n & m означает, что между числами производится побитовая конъюнкция.
Для какого наименьшего натурального значения А формула
(x & 17 = 0) → ((x & 55 ≠ 0) → (x & А ≠ 0)) тождественно истинна (то есть принимает
значение 1 при любом натуральном значении переменной х)?
def F(x, A):
return (x & 17 == 0) <= ((x & 55 != 0) <= (x & A != 0))
for A in range (1, 1000):
if all(F(x, A) for x in range (1, 10000)):
print(A)
break
>>> 38
1
cделано командой Умскул
Информатика с Викторией Ланской @infa_vikusya
ЗАДАНИЕ №15 | ШПАРГАЛКА
Задание №3 (ТИП: ГРАФИКИ)
Для какого наименьшего натурального значения A выражение
(4y - x < A) ∨ (x ≥ 81) ∨ (y ≥ 35) тождественно истинно для любых положительных и
целых x и y. В ответ запишите целое число – значение A.
def F(x, y, A)
A):
(4*y
return (4*y - x < A) or (x >= 81
81)) or (y >= 35
35)
(1,
for A in range (1, 1000
1000):
):
(1,
if all(F(x, y, A) for x in range (1, 1000
1000) (1,
) for y in range (1, 1000
1000)):
)):
print(A)
break
>>> 136
Задание №4 (ТИП: ОТРЕЗКИ)
Заданы два отрезка Q = [18, 41] и P = [9, 17], лежащие на числовой прямой. Также
существует отрезок А. Он таков, что формула ((x ∈ P) ∨ (x ∈ Q)) → (x ∈ A) истинна,
причём переменная x может принимать любые значения. Какую наименьшую длину
может принимать отрезок А? Определите и запишите в ответ целое число.
Q = list(range(18,
list(range(18, 42
42))
))
P = list(range(9,
list(range(9, 18
18))
))
A = []
for x in range(
range(1000):
1000):
if (((x in P) or (x in Q)) <= (x in A)) == False
False:
A.append(x)
print(A[-1] - A[
print(A[-1] A[0])
0])
>>> 32
2
cделано командой Умскул