Задание 15. Истинность логического выражения
Решение примеров
Задача Демо-2024
Для какого наименьшего неотрицательного числа A выражение:
(x + 2 · y < A) ∨ (y > x) ∨ (x > 60)
тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных значениях переменных x и y?
Ответ: 181
def f(x, y, a): return (x + 2 * y < a) or (y > x) or (x > 60)
for a in range(1000):
if all(f(x,y,a) for x in range(1000) for y in range(1000)):
print(a); break
Задача № 7559, ЕГЭ-2024
Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наибольшего натурального числа A формула
ДЕЛ(х, 33) → (¬ДЕЛ(х, A) → ¬ДЕЛ(х, 242))
тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?
Ответ: 726
def f(x,a): return (x%33==0) <= ((x%a!=0) <= (x%242!=0))
for a in range(1, 1500):
if all(f(x,a) for x in range(1, 10000)):
mx = a
print(mx)
Задача Евич-12
Обозначим через ВЗП(x, y) утверждение "натуральные числа x и y не имеют общих натуральных делителей, кроме 1". При каком наименьшем натуральном значении A формула:
(¬ ВЗП(x, 756) → ¬ ВЗП(x, A)) ∧ (¬ ВЗП(x, A) → ¬ ВЗП(x, 756))
тождественно истинна, т.е. принимает значение 1 при любом натуральном значении переменной x?
Ответ: 42
Решение
# используем функцию gcd() - нахождение НОД
#(наибольшего общего делителя) из пакета math
from math import *
def vzp(x,y): return gcd(x,y) != 1
def f(x,a): return (vzp(x,756) <= vzp(x,a)) and (vzp(x,a) <= vzp(x,756))
for a in range(1,1000):
if all(f(x,a) for x in range(1, 10000)):
print(a); break
Задача Досрок-2023_1
Обозначим чрез m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Так, например, 14 & 5 = 11102 & 01012 = 01002 = 4. Для какого наименьшего неотрицательного числа A формула:
x & 39 = 0 ∨ (x & 11 = 0 → (x & A ≠ 0))
тождественно истинна (т.е. принимает значение 1) при любом неотрицательном целом значении переменной х?
Ответ: 36
def f(x, a): return (x & 39 == 0) or ((x & 11 == 0) <= (x & a != 0))
for a in range(1, 1000):
if all(f(x, a) for x in range(10000)):
print(a); break
Задача № 5921
(М. Ишимов) Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Обозначим через СУММБОЛ(s, d) утверждение «сумма целых чисел s и d больше 0». Для какого наименьшего натурального числа А формула
(x + A ≥ 160) ∨ (ДЕЛ(x, 7) → ¬СУММБОЛ(x, –17))
тождественно истинна (т.е. принимает значение 1) при любом натуральном значении переменной х?
Ответ: 139
def f(x, a):
return (x + a >= 160) or ((x % 7 == 0) <= (not (x - 17 > 0)))
for a in range(1, 200):
if all(f(x, a) for x in range(1, 1000)):
print(a); break
Домашнее задание
Перейти на сайт ФИПИ "Открытый банк заданией ЕГЭ"
2. Раскрыть вкладку "ПОДБОР ЗАДАНИЙ" , в таблице выбрать вариант задания и ввести этот номер в окно "Номер задания"
3. Решить задание и проверить решение на сайте
Задания открытого банка по информатике
6C7D42 |
746342 |
C25A10 |
C38156 |
7D1C51 |
A6074C |
23B72B |
319857 |
127E1B |
5CACFD |
543526 |
794FA3 |
6962D9 |
951DFC |
ACD12F |
1E71A4 |
76DE5A |
A73FF2 |
4B40D9 |
A71FA4 |
AD945C |
E8CAFC |
7D91D6 |
9992AA |
D6A8C9 |
F66308 |
C9E5D0 |
95C2C8 |
8A8E69 |
F43771 |
612ADC |
43EF9F |
40A245 |
08BA7A |
3708D1 |
B52794 |
4CCE43 |
2AC0B5 |
BA3F5F |
1EF2C9 |
0C2C4D |
F3F61F |
2D0C51 |
600D3A |