metodika.site

ЕГЭ-15 Истинность логического выражения

ответ и код

30

def f(x,a1,a2):
    P = 10 <= x <= 20
    Q = 25 <= x <= 55
    A = a1 <= x <= a2
    return A <= (P or Q)

d = []
for x in 10, 20, 25, 55:
    d.append(x)
    d.append(x-0.01)
    d.append(x+0.01)

z = []
for a1 in d:
    for a2 in d:
        if a2>=a1 and all(f(x,a1,a2) for x in d):
            z.append(a2-a1)

print(max(z))

ответ и код

1331.9899999999998 ==> 1332

def f(x,a1,a2):
    P = 1023 <= x <= 2148
    Q = 1362 <= x <= 3898
    R = 1813 <= x <= 2566
    A = a1 <= x <= a2
    return (not((Q)<=(P or R)))<=((not A)<=(not Q))
d = []
for x in 1023, 2148, 1362, 3898, 1813, 2566:
    d.append(x)
    d.append(x-0.01)
    d.append(x+0.01)
z = []
for a1 in d:
    for a2 in d:
        if a2>=a1 and all(f(x,a1,a2) for x in d):
            z.append(a2-a1)
print(min(z))

ответ и код

85

def f(x,a1,a2):
    P = 55 <= x <= 80
    Q = 20 <= x <= 105
    A = a1 <= x <= a2
    return  (Q)<= ((P==Q)or((not P)<=(A)))
d = []
for x in 55, 80, 20, 105:
    d.append(x)
    d.append(x-0.01)
    d.append(x+0.01)
z = []
for a1 in d:
    for a2 in d:
        if a2>=a1 and all(f(x,a1,a2) for x in d):
            z.append(a2-a1)
print(min(z))

ответ и код

19.990000000000002 ==> 20

def f(x,a1,a2):
    P = 15 <= x <= 40
    Q = 35 <= x <= 60
    A = a1 <= x <= a2
    return not (((not Q)or (P)) and (A)) #not - так как нужны 0 значения
d = []
for x in 15, 40, 35, 60:
    d.append(x)
    d.append(x-0.01)
    d.append(x+0.01)
z = []
for a1 in d:
    for a2 in d:
        if a2>=a1 and all(f(x,a1,a2) for x in d):
            z.append(a2-a1)
print(max(z))

ответ и код

4

def f(x,a):
    P = x in {1,2,3,4}
    Q = x in {1,2,3,4,5,6}
    A = x in a
    return (not A) <= ((not P) or (not Q))

a = set()
for x in range(1,100):
    if f(x,a) == 0:
        a.add(x)

print(len(a))

ответ и код

90

import math
def f(x,a):
    P = x in {2,4,9,10,15}
    Q = x in {3,8,9,10,20}
    A = x in a
    return (not(P==A))<=(Q == A)

a = set()
for x in range(1,100):
    if f(x,a) == 0:
        a.add(x)

print(math.prod(a))

ответ и код

18

def f(x,a):
    P = x in {x for x in range(2,22,2)} #можно и так {2,4,6,8,10,12,14,16,18,20}
    Q = x in {x for x in range(5,55,5)} #можно и так {5,10,15,20,25,30,35,40,45,50}
    A = x in a
    return (A <= P) or ((not Q)<= (not A))

a = set(range(1,100))
for x in range(1,100):
    if f(x,a) == 0:
        a.remove(x)

print(len(a))


ТЕСТ 2. Закрепление

дополнительно

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Мы используем файлы cookie для анализа событий на нашем сайте. Продолжая просмотр сайта, вы принимаете условия использования