Форум » Логические выражения » 3178 » Ответить

3178

Татьяна Сучкова: Что-то странное: Обозначим через ДЕЛ(n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наибольшего натурального числа A формула ДЕЛ(130, A) ∧ ((¬ДЕЛ(x, A) ∧ ДЕЛ(x, 38)) → ¬ДЕЛ(x, 78)) тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)? Решение максимально подробно так (пробовали проще, результат тот же: [pre] def f(x, A): return Del(130,A) and (not(not Del(x,A) and Del(x,38)) or not Del(x,78)) for A in range(1, 200): ok= True for x in range(1, 1000): if not f(x, A): ok = False break if ok: print(A) [/pre] наибольший ответ 130, 26 тоже прсутствут в списке, но не макисмальнный. В ответе 26

Ответов - 1

sgglazkov: Увеличьте диапазон иксов до 10000. У вас 1000 и их не хватает. А вообще код можно существенно упростить: [pre2]for a in range(1, 200): f = 1 for x in range(1, 10000): f *= (130 % a == 0) and (((x % a != 0) and (x % 38 == 0)) <= (x % 78 != 0)) if f == 1: print(a)[/pre2]



полная версия страницы