Search this site
Embedded Files
Справочник
  • Главная страница
    • Вворд/вывод
      • Стандартный ввод/вывод
      • Файловый ввод/вывод
      • Случайные данные
    • Обработка числовой информации
      • Целые числа
      • Вещественные числа
      • Массивы (списки)
    • Обработка текстовой информации
    • Дополнительные функции
    • Задачи ЕГЭ
      • Каталог задач
      • Задание №2
      • Задание №5
      • Задание №6
        • Задание №6-Help
      • Задание № 7
        • Задание № 7- Help
      • Задание №8
        • Задание 8 - Help
      • Задание №12
        • 12 - Алгоритмы с циклами и ветвлениями-Help
      • Задание № 14
        • 14 - Позиционные системы счисления -Help
      • Задание №15
      • Задание №16
        • 16-Help
      • Задание №17
      • Задание №18
      • Задание №19-21
      • Задание №22
      • Задание №23
      • Задание №24
      • Задание № 25
        • Задание № 25 - Help
      • Задание № 26
      • Задание №27
      • Задание №9
Справочник
  • Главная страница
    • Вворд/вывод
      • Стандартный ввод/вывод
      • Файловый ввод/вывод
      • Случайные данные
    • Обработка числовой информации
      • Целые числа
      • Вещественные числа
      • Массивы (списки)
    • Обработка текстовой информации
    • Дополнительные функции
    • Задачи ЕГЭ
      • Каталог задач
      • Задание №2
      • Задание №5
      • Задание №6
        • Задание №6-Help
      • Задание № 7
        • Задание № 7- Help
      • Задание №8
        • Задание 8 - Help
      • Задание №12
        • 12 - Алгоритмы с циклами и ветвлениями-Help
      • Задание № 14
        • 14 - Позиционные системы счисления -Help
      • Задание №15
      • Задание №16
        • 16-Help
      • Задание №17
      • Задание №18
      • Задание №19-21
      • Задание №22
      • Задание №23
      • Задание №24
      • Задание № 25
        • Задание № 25 - Help
      • Задание № 26
      • Задание №27
      • Задание №9
  • More
    • Главная страница
      • Вворд/вывод
        • Стандартный ввод/вывод
        • Файловый ввод/вывод
        • Случайные данные
      • Обработка числовой информации
        • Целые числа
        • Вещественные числа
        • Массивы (списки)
      • Обработка текстовой информации
      • Дополнительные функции
      • Задачи ЕГЭ
        • Каталог задач
        • Задание №2
        • Задание №5
        • Задание №6
          • Задание №6-Help
        • Задание № 7
          • Задание № 7- Help
        • Задание №8
          • Задание 8 - Help
        • Задание №12
          • 12 - Алгоритмы с циклами и ветвлениями-Help
        • Задание № 14
          • 14 - Позиционные системы счисления -Help
        • Задание №15
        • Задание №16
          • 16-Help
        • Задание №17
        • Задание №18
        • Задание №19-21
        • Задание №22
        • Задание №23
        • Задание №24
        • Задание № 25
          • Задание № 25 - Help
        • Задание № 26
        • Задание №27
        • Задание №9

15 - Логические выражения
и множества


Источники: 

сайт Полякова (https://kpolyakov.spb.ru/)

15.1 - Задачи с интервалами

1.1) (№ 6481) На числовой прямой даны три отрезка: P = [106; 218], Q = [132; 388] и R = [183; 256]. Укажите наименьшую возможную длину такого отрезка A, что формула

(¬((x ∈ Q) → ((x ∈ P) ∨ (x ∈ R)))) → (¬(x ∈ A) → ¬(x ∈ Q))

тождественно истинна, то есть принимает значение 1 при любом значении переменной х? 

Решение

Вариант 1 (t = 36.44 c.)

for da in range(0,400):

  for ai in range(100,400-da):

    fl=1

    for i in range(212,800):

      x=i*0.5

      p=106<=x<=218

      q=132<=x<=388

      r=183<=x<=256

      a=(ai<=x<=(ai+da))

      if ((not(q) )+ p + r + a)==0: 'Выполнено преобразование лог.высказывания'

        fl=0

        break

    if fl==1:  mina=da;break

  if fl==1:break

print(mina)     


Вариант 2 (t = 20.61 c.)

for da in range(0,400):

  for ai in range(100,400-da):

    fl=1

    for i in range(212,800):

      x=i*0.5

      if not((not(132<=x<=388))or(106<=x<=218)or(183<=x<=256)or(ai<=x<=(ai+da))):

        fl=0

        break

    if fl==1:  mina=da;break

  if fl==1:break

print(mina)


Ответ:   132

1.2) (№ 18044 Л.Шастин) На числовой прямой даны два отрезка:  M=[32;68] и N=[54;76]. Укажите наименьшую возможную длину такого отрезка A, для которого логическое выражение

¬((x∈M)∨(x∈N))≡ ¬(x∈A)

тождественно истинно (т.е. принимает значение 1) при любом значении переменной x. 

Решение

mina=10**16

for a1 in range(1,100):

    for a2 in range(a1,100):

        fl=1

        for x in range(100):

            x=x+0.5

            if not(not((32<=x<=68)or(54<=x<=76))==(not(a1<=x<=a2))):

                fl=0;break

        if fl: mina=min(mina,a2-a1)

print(mina)


Ответ:   44

15.2 - Задачи на множества чисел

2.1)(№4283) Элементами множеств А, P, Q являются натуральные числа, причём P={1,3,4,9,11,13,15,17,19,21}, Q={3,6,9,12,15,18,21,24,27,30}. Известно, что выражение

((x∈P)→(x∈A))∨((x∉A)→(x∉Q))

истинно (т.е. принимает значение 1 при любом натуральном значении переменной х. Определите наименьшее возможное произведение элементов в множестве A. 

Решение

p=[1,3,4,9,11,13,15,17,19,21]

q=[3,6,9,12,15,18,21,24,27,30]

a=[]

for x in (set(p+q)):

    if not((x in p)<=(x in a)or (not(x in a))<=(not(x in q))):

           a.append(x)

p=1

for x in a: p*=x

print(p)


Ответ: 8505

15.3 - Задачи с  делителями

3.1) (№6829 А.Богданов) Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наименьшего натурального A выражение

(А + х < 123) → (ДЕЛ (х, 5) → ¬ДЕЛ(x, 7))

тождественно истинно (т.е. принимает значение 1) при любом натуральном значении переменной х? 

Решение

for a in range(10000):

  fl=1

  for x in range(1,1000):

    if not(int((a+x<123)<=((x%5==0)<=(x%7!=0)))):fl=0;break

  if fl:print(a);break


Ответ: 88

3.2) (№6750 Е.Джобс) Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наибольшего натурального A выражение

ДЕЛ(x, 10) ∧ ДЕЛ(x, 26) ∧ (x ≥ 300) → (A ≤ x)

тождественно истинно, т.е. принимает значение 1 при любом натуральном значении переменной х? 

Решение

for a in range(10000):

  fl=1

  for x in range(1,1000):

    if not(((x%10==0)and(x%26==0)and(x>=300))<=(a<=x)):fl=0;break

  if fl:maxa=a

  else:break

print(maxa)


Ответ: 390

3.3) (№18175 Д.Бахтиев) Обозначим через ДЕЛ(x, y) утверждение «натуральное число x делится без остатка на натуральное число y». Для какого наибольшего натурального числа A логическое выражение

(¬ДЕЛ(x,7) ∧ ДЕЛ(x,13)) →(x>A−40)

истинно (т.е. принимает значение 1) при любом натуральном значении переменной х? 

Решение

for a in range(1,1000):

    fl=1

    for x in range(1,2000):

        if not((x%7>0 and (x%13==0))<=(x>a-40)):

            fl=0;break

    if fl: maxa=a

print(maxa)


Ответ: 52

15.4 - Задачи с битовыми логическими операциями

4.1) (№ 7258) Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Например, 14 & 5 = 11102 & 01012 = 01002 = 4. Для какого наименьшего натурального числа А формула

((x & 673 ≠ 0) ∨ (x & 189 ≠ 0)) → (x &А > 0)

тождественно истинно (то есть принимает значение 1 при любом неотрицательном значении переменной X)? 

Решение

for a in range(10000):

  fl=1

  for x in range(1000):

    if not(int((x&673!=0)or(x&189!=0))<=int(x&a>0)):fl=0;break

  if fl:print(a);break


Ответ: 701

4.2) (№ 7257) Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Например, 14 & 5 = 11102 & 01012 = 01002 = 4. Для какого наименьшего натурального числа А формула

((x & 156 ≠ 0) ∨ (x & 436 ≠ 0)) → (x &А > 0)

тождественно истинно (то есть принимает значение 1 при любом неотрицательном значении переменной X)? 

Решение

for a in range(10000):

  fl=1

  for x in range(1000):

    if not(int((x&156!=0)or(x&436!=0))<=int(x&a>0)):fl=0;break

  if fl:print(a);break


Ответ: 444

4.2) (№ 18266 Л.Шастин) Обозначим через m & n поразрядную конъюнкцию неотрицательных целых чисел m и n. Например, 14 & 5 = 11102 & 01012 = 01002 = 4. Для какого наименьшего натурального числа А формула

((x & 156 ≠ 0) ∨ (x & 436 ≠ 0)) → (x &А > 0)

тождественно истинно (то есть принимает значение 1 при любом неотрицательном значении переменной X)? 

Решение

for a in range(1,1000):

    fl=1

    for x in range(1,10000):

        if not((x&57==0) or ((x&23==0)<=(not(x&a==0)))): fl=0;break

    if fl:print(a);break


Ответ: 40

15.5 - Анализ неравенств на плоскости

5.1) Сколько существует целых значений А, при которых формула

  ((x ≤ 5) → (x⋅x < A)) ∧ ((y⋅y ≤ A) → (y ≤ 8))

тождественно истинна (то есть принимает значение 1 при любых целых неотрицательных значениях переменных x и y)? 

Решение

k=0

for a in range(200):

    fl=0

    for x in range(200):

        for y in range(200):

            if (((x<=5)<=(x*x<a))and((y*y)<=a)<=(y<=8))==0: fl=1;break

        if fl==1:break

    if fl==0: print(a);k+=1

print('Всего - ',k) 

Ответ:   55

5.2)  Для какого наименьшего целого неотрицательного числа А выражение

  (3x + 2y < A) ∨ (y > 10) ∨ (3y < x)

тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных x и y? 

Решение

for a in range(200):

    fl=0

    for x in range(200):

        for y in range(200):

            if ((3*x+2*y<a)or(y>10)or(3*y<x))==0: fl=1;break

        if fl==1:break

    if fl==0: print(a)

Ответ:  111

5.3)(№ 5356 ЕГЭ-2022)  Для какого наибольшего целого неотрицательного A выражение

(x + y ≤ 22) ∨ (y ≤ x – 6) ∨ (y ≥ A))

тождественно истинно, т.е. принимает значение 1 при любых целых неотрицательных x и y? 

Решение

for a in range(100):

    fl=1

    for x in range(100):

        for y in range(100):

            if not((x + y <= 22) or (y <= x - 6) or (y >= a)):

                fl=0

    if fl: maxa=a

print(maxa)

Ответ:  9

5.4)(№ 7267)  При каком наибольшем целом A найдутся такие целые неотрицательные x и y, при которых выражение

(4·x + y > 115) ∨ (x > 3·y) ∨ (x + 4·y < A)

ложно? 

Решение

for a in range(1000):

  fl=1

  for x in range(50):

    for y in range(120):

      if not((4*x+y>115)or(x>3*y)or(x+4*y<a)):

        maxa=a;fl=0

        break

    if maxa==a:break

  if fl:break

print(maxa)


Ответ:  460 

5.5)(№ 7266)  При каком наибольшем целом A найдутся такие целые неотрицательные x и y, при которых выражение

(3·x + 2·y > 95) ∨ (4·x < 3·y) ∨ (x + 4·y < A) 

ложно? 

Решение

for a in range(1000):

  fl=1

  for x in range(50):

    for y in range(120):

      if not((3*x+2*y>95)or(4*x<3*y)or(x+4*y<a)):

        maxa=a;fl=0

        break

    if maxa==a:break

  if fl:break

print(maxa)


Ответ:  460 

5.6)(№ 18140 В.Колчев)  Для какого наибольшего целого неотрицательного числа А формула

(x - y ≥ 39) ∨ (y ≤ x) ∨ (y ≥ A - 20)

тождественно истинно (т.е. принимает значение 1) при любых целых положительных x и y. 

Решение

for a in range(1000):

    fl=1

    for x in range(1,100):

        for y in range(1,100):

            if not(x-y>=39 or y<=x or y>=a-20): fl=0;break

        if fl==0:break

    if fl:maxa=a

print(maxa)


Ответ: 22

5.7)(№ 6047 ФИПИ 04.02.23)  Для какого наибольшего целого неотрицательного числа А формула

(x > A) ∨ (y > A) ∨ (y – 2x + 12 ≠ 0)

тождественно истинна (т.е. принимает значение 1) при любых целых неотрицательных x и y. 

Решение

for a in range(1000):

    fl=1

    for x in range(100):

        for y in range(100):

            if not(x>a or y>a or y-2*x+12!=0): fl=0;break

        if fl==0:break

    if fl:maxa=a

print(maxa)


Ответ: 5

15.6 - Логика и линейное программирование 

(С) А.Гребенкин, 2022                                                                                                                                                                                                 https://clck.ru/UhWAd 

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse