Функция будет ложна тогда, когда первая скобка истинна, а вторая ложна ( 1 --> 0 = 0 ). Из этого следует, что x не должно быть равно y, если x = 0, то y = 1 и наоборот. Построим таблицу истинности:
x y z w F
0 1 0 0 = 0
0 1 0 1 = 0
0 1 1 0 = 1
0 1 1 1 = 1
1 0 0 0 = 1
1 0 0 1 = 0
1 0 1 0 = 0
1 0 1 1 = 1
Подставив значения, отсеем лишние строки. Подходят 1, 2, 6 и 7 строки. Какая-то переменная должна быть ложна все три раза. Видим, что это строчки 1, 3 и 6, поскольку z ложна трижды. Методом анализа и перебора строк, установим, что порядок таков: zwyx
Функция будет ложна тогда, когда первая скобка истинна, а вторая ложна ( 1 --> 0 = 0 ). Из этого следует, что x не должно быть равно y, если x = 0, то y = 1 и наоборот. Построим таблицу истинности:
x y z w F
0 1 0 0 = 0
0 1 0 1 = 0
0 1 1 0 = 1
0 1 1 1 = 1
1 0 0 0 = 1
1 0 0 1 = 0
1 0 1 0 = 0
1 0 1 1 = 1
Подставив значения, отсеем лишние строки. Подходят 1, 2, 6 и 7 строки. Какая-то переменная должна быть ложна все три раза. Видим, что это строчки 1, 3 и 6, поскольку z ложна трижды. Методом анализа и перебора строк, установим, что порядок таков: zwyx
import random as r
def print_door():
print(" {0:_^10}".format(''))
for i in range(10):
if i<9:
print("|{0: ^9} |".format(' '))
if i==3:
print("|---|{0: ^5} |".format(' '))
print("|---|{0: ^5} |".format(' '))
elif i==9:
print("|{0:_^10}|".format(''),end="")
return ' '
def create_session(n):
for i in range(n):
print_door(),
print('\n')
return ''
while True:
N=int(input("введите кол-во дверей"))
create_session(N)
y=r.randint(1,N)
x=int(input("введите номер двери в которой пусто-"))
while x!=y:
x=int(input("введите номер двери в которой пусто-"))
print("вы выиграли")
x=input("вы хотите продолжить играть?")
if x=="нет":
break
elif x=="да":
continue