tatyanavartanyp06xy5
19.10.2020 03:13

решить 2 вопроса! 1)Реши задачу.

Восемь школьников оставались в классе на перемене, и один из них разбил окно. На вопрос директора, кто это сделал, были получены следующие ответы:
Эдгар: «Разбил Андрей»!
Инна : «Полина разбила»!
Оля: «Разбила Инна».
Миша: «Это кто-то с улицы»!
Надя: «Да, Оля права».
Коля: «Это либо Полина, либо Инна»!
Андрей: «Ни Полина , ни Инна этого не делали»!
Полина: «Андрей не бил»!

Кто разбил окно, если известно, что из этих высказываний истинно ровно три.

2)
Составь алгоритм решения логических задач. (Запиши цифры в правильном порядке).
Выделить простые условия и обозначить их буквами.
Изучить условие задачи.
Составить конечную формулу.
Записать условия на языке алгебры логики.
Упростить формулу, проанализировать полученные результаты, или составить таблицу истинности, найти по таблице истинности значения переменных, для которыхF=1, проанализировать результаты.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ArthurMyChemov
30.01.2021 06:01

Первый вариант:

a = int(input('Введите a: '))

while True:

 b = int(input('Введите b: '))

 if a != b: break

 print('Введите значение, неравное a')

while True:

 c = int(input('Введите c: '))

 if not c in [a,b]: break

 print('Введите значение, отличное от предыдущих')

while True:

 d = int(input('Введите d: '))

 if not d in [a,b,c]: break

 print('Введите значение, отличное от предыдущих')

print('--- Вы ввели: ---')

print('a = ', a)

print('b = ', b)

print('c = ', c)

print('d = ', d)

print('--- Вычисления ---')

print('1:')

if a%b + a%c + a%d == 0: print('a делится на b, c и d!')

elif a%b == 0: print('a делится на b!')

elif a%c == 0: print('a делится на c!')

elif a%d == 0: print('a делится на d!')

else: print('a не делится ни на b, ни на c, ни на d!')

print('2:')

if c-d == 0: print('Невозможно вычислить (a-b)/(c-d), т.к. c-d = 0')

else: print('(a-b)/(c-d) = ', (a-b)/(c-d))

if c+b+d == 0: print('Невозможно вычислить a/(c+b+d), c+b+d = 0')

else: print('a/(c+b+d) = ', a/(c+b+d))

print('3:')

max = a

min = a

if max < b: max = b

if min > b: min = b

if max < c: max = c

if min > c: min = c

if max < d: max = d

if min > d: min = d

print('Минимальное число из введённых: ', min)

print('Максимальное число из введённых: ', max)

Второй вариант (сложнее читается, но сам по себе компактнее):

values = []

variables = ['a','b','c','d']

check = [0,0,0]

for i in range(4):

 while True:

   x = int(input(f'Введите {i+1}-е число: '))

   if x not in values:

     values.append(x)

     break

   print('Введите значение, отличное от предыдущих')

print(f'--- Вы ввели:')

for i in enumerate(values):

 print(f'{variables[i[0]]} = {i[1]}')

print('--- Вычисления ---')

print('1:')

for i in enumerate(values[1:]):

 if values[0] % i[1] == 0: check[i[0]] = 1

if sum(check) == 3: print('a делится на остальные!')

elif sum(check) == 0: print('a не делится на остальные!')

else:

 for i in enumerate(check):

   if i[1] == 1: print(f'a делится на {variables[i[0]+1]}!')

print('2:')

if values[2] == values[3]: print('Невозможно вычислить (a-b)/(c-d), т.к. c-d = 0')

else: print('(a-b)/(c-d) = ', (values[0]-values[1])/(values[2]-values[3]))

if sum(values[1:]) == 0: print('Невозможно вычислить a/(c+b+d), c+b+d = 0')

else: print('a/(c+b+d) = ', values[0]/sum(values[1:]))

print('3:')

print(f'Минимальное число из введённых: {min(values)}')

print(f'Максимальное число из введённых: {max(values)}')

0,0(0 оценок)
Ответ:
papashamuslimo
30.01.2021 06:01

a = list(map(int, input().split()))

if len(a) != len(set(a)):

 raise ValueError('Числа введены не верно(повторяются)')

z = (a[0]%a[1]==0) and (a[0]%a[2]==0) and (a[0]%a[3]==0)

b = (a[0]%a[1]==0) or (a[0]%a[2]==0) or (a[0]%a[3]==0)

if z: print('Первое число делится без остатка на все введенные числа')

elif b: print('Первое число делится без остатка на одно или два из введенных чисел')

else: print('Первое число не делится без остатка ни на одно из введенных чисел')

if a[2]-a[3] != 0:  print((a[0]-a[1])/(a[2]-a[3]))

if a[2]+a[1]+a[3] != 0:  print(a[0]/(a[2]+a[1]+a[3]))

print(f'Наибольшее число - {max(a)}')

print(f'Наименьшее число - {min(a)}')

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота