15.03 Неравенства
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно (т.е. принимает значение 1 при любом неотрицательном целом значении
переменной и
for a in range(0, 1000): c = 0 # Переменная-флаг for x in range(1, 1000): for y in range(1, 1000): if ((y + 2*x != 69) or (a < x) or (a < y)) == False: c = 1 break if c == 1: break if c == 0: print(a)
Ошибка.
Попробуйте повторить позже
Каково наибольшее целое при котором истинно высказывание:
Решение руками
Заметим, что логическое следование ложно только в случае . Значит, нужно понять, при
каких x впервые наступит такое условие (и взять x меньше, но максимальный).
Такое условие получается при x = 8: .
Возьмем x = 7: . Получили следование из 0 в 0, что дает истину. Значит,
наибольший x = 7.
Решение прогой
for x in range(1000): if (50 < x * x) <= (50 > (x + 1) * (x + 1)): print(x)
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно (т.е. принимает значение 1 при любом неотрицательном целом значении
переменных и
def f(a): for x in range(1000): for y in range(1000): if not((99 != y + 2 * x) or (a < x) or (a < y)): return False return True for a in range(1000): if f(a): print(a)
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно (т.е. принимает значение 1 при любых неотрицательных целых значениях переменных и
)?
Решение 1
def f(a): for x in range(1, 1000): for y in range(1, 1000): if ((69 < y + 2 * x) or (a > x) or (a > y)) == False: return False return True for a in range(1000): if f(a): print(a) break
Решение 2
Враги хотят чтобы и
были как можно больше и при этом
было меньше либо равно 69.
и
должны
быть одновременно большими чтобы обе скобки с
были ложны. Это возможно когда они оба равны 23 и их сумма бадет
равна 69.
Тогда друзья подберут такой , что он будет гарантированно больше 23. Такой наименьший
.
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
Решение 1 (руками)
Инвертируем известную часть:
Это выражение истино (а исходное соответственно ложно) при и
одновременно. Неизвестная часть
говорит, что сумма x и 3y должна быть больше чем A, тогда возьмем максимальные x и y из известной части,
так как они же будут являться минимальными значениями при которых неизвестная часть должна давать истину.
Подставим
и
, получим
, отсюда
.
Решение 2 (прогой)
def f(a): for x in range(1, 1000): for y in range(1, 1000): if not ((x + 3 * y > a) or (x < 18) or (y < 33)): return False return True for a in range(1000, 0, -1): if f(a): print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
Решение руками
Инвертируем известную часть:
Это выражение истино (а исходное соответственно ложно) при и
одновременно. Неизвестная часть
говорит, что сумма 3x и 9y должна быть больше или равна чем A, тогда возьмем максимальные x и y из
известной части, так как они же будут являться минимальными значениями при которых неизвестная часть должна давать
истину. Подставим
и
, получим
, отсюда
.
Решение программой
def f(a): for x in range(1, 1000): for y in range(1, 1000): if not ((3 * x + 9 * y >= a) or not (x > 20) or (y < 10)): return False return True for a in range(1000, 0, -1): if f(a): print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
Решение 1
Враги хотят чтобы и
были как можно меньше и при этом
и
. Тогда они возьмут
.
Тогда друзья подберут такой , что он будет гарантированно меньше либо равен
. Такой
наибольший
.
Решение 2
def f(a): for x in range(1, 1000): for y in range(1, 1000): if ((x + 13/9 * y >= a) or not(x >= y) or (y < 7)) == False: return False return True for a in range(100): if f(a): print(a)
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
Решение 1 (руками)
Враги хотят чтобы был как можно меньше и при этом
и
. Тогда они возьмут
.
Тогда друзья подберут такой , что он будет гарантированно меньше либо равен
. Такой наибольший
.
Решение 2 (прогой)
def f(a): for x in range(1, 1000): for y in range(1, 1000): if not ((5 * x + 2 * y != 85) or (a <= x) or (x <= y)): return False return True for a in range(1000, 0, -1): if f(a): print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно, т.е. принимает значение при любых целых неотрицательных
?
Составим систему для врагов:
Враги мечтают, чтобы и
. Тогда максимальный
, который смогут взять враги, чтобы победить,
будет равен
. Мечты врагов такие: «Вот бы
». Тогда друзья говорят: «Нет,
». Минимальное подходящее
равно
.
Решение программой:
for a in range(1000): fl = 0 for x in range(1000): f = (x < a) or (x < 20) or (x > 30) if f == 0: fl = 1 break if not fl: print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно, т.е. принимает значение при любых целых неотрицательных
?
Составим систему для врагов:
Запишем мечты врагов:
1) , так как
.
2) выражение должно быть как можно больше. Следовательно, враги хотят выбрать самый большой
и самый
большой
, который должен быть не больше
.
Тогда враги возьмут .
Друзья хотят, чтобы было строго больше
. Минимальный такой
.
Решение программой
def f(x, y, a): return (x ** 2 - 3 * x + 2 > 0) or (y > x ** 2 + 7) or (x * y < a) for a in range(1000): fl = 0 for x in range(300): for y in range(300): if not f(x, y, a): fl = 1 break if fl: break if not fl: print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно, то есть принимает значение при любых целых неотрицательных
и
?
Решение 1. Руками
Система для врагов:
|
Чтобы условия врагов не выполнялись, друзья должны взять такое , чтобы при всех
и
, которые хотят враги
выполнялось
. Чтобы получить
, которое в данном неравенстве подойдет для всех значений
и
, возьмем максимально допустимые по врагам
и
(если
подойдет для них, то для меньших тем
более).
Получим: . Откуда следует, что
.
Решение 2. Прогой
def f(x, y, A): return (y + 2 * x < A) or (x > 30) or (y > 20) for A in range(10000): met_false = False for x in range(1000): for y in range(1000): if not f(x, y, A): met_false = True break if met_false: break if not met_false: print(A) break
Решение 3. Прогой
def f(a): for x in range(1000): for y in range(1000): if not((y + 2 * x < a) or (x > 30) or (y > 20)): return False return True for a in range(1000): if f(a): print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
return (x + 3*y > A) or (x < 18) or (y < 33)
ans = 0
for a in range(1, 500):
for x in range(1, 500):
for y in range(1, 500):
flag = True
if not f(x, y, a):
flag = False
break
if not flag:
break
if flag:
ans = max(a, ans)
print(ans)
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
Решение 1. Руками
Система для врагов:
|
Чтобы условия врагов не выполнялись, друзья должны взять такое , чтобы при всех
и
, которые хотят враги
выполнялось
. Чтобы получить
, которое в данном неравенстве подойдет для всех значений
и
возьмем максимально допустимые по врагам
и
(если
подойдет для них, то для меньших тем
более).
Получим: . Откуда следует, что
.
Решение 2. Прогой
def f(x, y, A): return (2 * x + 5 * y <= A) or (x >= y) or (y > 11) for a in range(500): for x in range(100): for y in range(100): flag = True if not f(x, y, a): flag = False break if not flag: break if flag: print(a) break
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
return (y + 2*x < A) or (30 < x) or (20 < y)
ans = 10000000
for a in range(100):
for x in range(100):
for y in range(100):
flag = True
if not f(x, y, a):
flag = False
break
if not flag:
break
if flag:
ans = min(a, ans)
print(ans)
Ошибка.
Попробуйте повторить позже
Для какого наибольшего целого неотрицательного числа выражение
тождественно истинно при любых целых неотрицательных и
def f(a): for x in range(1, 1000): for y in range(1, 1000): if (((x <= 9) <= (x * x <= a)) and ((y * y <= a) <= (y <= 10))) == False: return False return True for a in range(1000): if f(a): print(a)
Ошибка.
Попробуйте повторить позже
Сколько существует целых неотрицательных чисел , при которых выражение
тождественно истинно (т.е. принимает значение 1 при любых неотрицательных целых значениях переменных и
)?
count = 0 for a in range(0, 1000): c = 0 # Переменная-флаг for x in range(1, 1000): for y in range(1, 1000): if (((y*y < a) <= (y <= 8)) and ((x <= 5) <= (x*x <= a))) == False: c = 1 break if c == 1: break if c == 0: count += 1 print(count)
Ошибка.
Попробуйте повторить позже
Для какого наименьшего целого числа формула
тождественно истинна при любых положительных и
?
Решение 1. Руками
Система для врагов:
|
Чтобы условия врагов не выполнялись, друзья должны взять такое , чтобы при всех
и
, которые хотят враги
выполнялось
или
(хотя бы одно из условий). Чтобы получить искомое
, посмотрим, какие
значения
нас принимают
и
. Из неравенств следует, что максимальные значения
и
равны
и
соответсвенно. А значит, можно выбрать то условие для
, где оно больше всех значений
(т.к.
найдутся значения
больше). Тогда чтобы выполнилось условие
значение, которое должно принимать
.
Решение 2. Программой
def f(x, y, a): return (x > 23) or (a > x) or (a > y) or (y > 47) for a in range(1000): podh = True for x in range(1000): for y in range(1000): if not(f(x, y, a)): podh = False break if not(podh): break if podh: print(a) break
Решение 3. Программой
def f(a): for x in range(1000): for y in range(1000): # если отрицание функции истинно, то такое a # не подходит if not((x > 23) or (a > x) or (a > y) or(y > 47)): return False # если все значения A прошли проверку, то вернем истину return True for a in range(100): if f(a): print(a) break
Ошибка.
Попробуйте повторить позже
Укажите наименьшее целое значение , при котором выражение
истинно для любых целых положительных значений и
.
for a in range(0, 1000): flag = True for k in range(1, 1000): for n in range(1, 1000): if not ((5 * k + 6 * n > 57) or ((k <= a) and (n < a))): flag = False break if flag: print(a) break
Ошибка.
Попробуйте повторить позже
Укажите наибольшее целое значение А, при котором выражение
def f(a): for x in range(1, 1000): for y in range(1, 1000): if ((y - x != 5) or (a < 2 * x ** 3 + y) or (a < y ** 2 + 16)) == False: return False return True for a in range(100): if f(a): print(a)
Ошибка.
Попробуйте повторить позже
Укажите наименьшее целое значение при котором выражение
Решение 1
Система для врагов:
|
Враги мечтают чтобы и при этом k было бы больше A или чтобы n было бы больше или равно A. Значит,
нужно понять, какие максимальные значения могут принимать k и n. Максимальное k = 10, максимальное n = 8. Чтобы
условия врагов не выполнялись, друзья должны взять такое A, чтобы
Наименьшим значением будет
A = 10.
Решение 2
for A in range(10000): flag = True for k in range(1, 1000): for n in range(1, 1000): f = (5*k + 6*n > 57) or ((k <= A) and (n < A)) if f == 0: flag = False break if flag == False: break if flag: print(A) break