15.03 Неравенства
Ошибка.
Попробуйте повторить позже
Сколько существует целых неотрицательных чисел , при которых выражение
тождественно истинно (т.е. принимает значение при любых неотрицательных целых значениях переменных
и
)?
Решение руками:
Упростим выражение:
Инвертируем известную часть для левой и правой части:
Нам нужно, чтобы выполнялась и левая часть выражения, и правая.
Разберём сначала левую часть:
Чтобы выполнялось, нужно взять наименьшее возможное значение для
, чтобы при больших
выражение точно было истиной.
То есть, при для левой части
... и так до
.
Теперь разберём правую часть:
Чтобы выполнялось, нужно взять наибольшее возможное значение для
, чтобы при меньших
выражение точно было истиной.
То есть, при для правой части
... и так до бесконечности.
Общие значения для обоих частей лежат в отрезке . Cледовательно, подходящих значений
будет
.
Идея решения:
Для нахождения количества целых неотрицательных , при которых выражение
тождественно истинно, используем программный перебор. Идея заключается в том, чтобы проверить все значения от
до
с помощью цикла for. Для каждого
проверяем все значения
и
от
до
через вложенные циклы
for. Для каждой тройки
вычисляем логическое выражение. Если хотя бы для одной пары
выражение
оказалось ложным, текущее
отбрасываем. Если выражение истинно для всех
, увеличиваем счётчик подходящих
. После перебора всех
счётчик покажет количество целых неотрицательных
, для которых выражение
тождественно истинно.
Решение программой:
# функция проверяет выполнение выражения для конкретного x, y и A def f(x, y, a): return ((y * y < a) <= (y <= 8)) and ((x <= 5) <= (x * x <= a)) # счётчик подходящих A counter = 0 # перебор возможных значений A от 0 до 299 for a in range(300): # флаг: 0 - условие не нарушено ни разу, 1 - условие нарушено хотя бы раз fl = 0 # перебор x от 0 до 299 for x in range(300): # перебор y от 0 до 299 for y in range(300): # если выражение ложно if not f(x, y, a): fl = 1 # меняем значение флага break # выходим из цикла y if fl: # если флаг равен 1 break # выходим из цикла x # если условие не нарушено ни разу, увеличиваем счётчик if not fl: counter += 1 # выводим количество подходящих A print(counter)
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!