15.05 Отрезки
Ошибка.
Попробуйте повторить позже
На числовой прямой даны три промежутка:
,
и
Каким может быть промежуток А чтобы формула
тождественно ложна при любых значениях переменной x. В ответ запишите наибольшую возможную целую длину промежутка А.
Решение аналитикой
Для упрощения записи заменим ,
,
и
.
Первым шагом раскроем импликацию:
Обратим внимание, что между двумя частямы выражение стоит тождество, тогда, чтобы выражение всегда было ложно нам необходимо подобрать такой отрезок A, чтобы результат правой части всегда отличался от результата левой части. Обозначим на числовой прямой правую часть и определим в каких диапазонах она дает истину, а в каких ложь.
Значит для праой части эти результаты должны быть противоположны. Изобразим известную часть левой части и отметим, какие результаты должны быть в диапазонах.
Таким образом, чтобы исходное выражение всегда было ложно, необходимо, чтобы отрезок лежал строго в отрезке
. Так как в задании необходимо найти наибольшую длину отрезка
, то это и будет являться отрезком
:
. Его длина
.
Решение программой
Идея заключается в переборе возможных концов отрезка (от 1 до 100) и проверке, что при всех значениях
переменной
(от 1 до 1000) исходное выражение даёт ложь. Если во время проверки найдётся хотя бы одно значение
,
нарушающее условие, программа должна перейти к рассмотрению нового отрезка. После завершения перебора
максимальная полученная длина отрезка
и будет ответом.
Для реализации этой идеи необходимо задать отрезки ,
и
при помощи функции range(), а также ввести
переменную
, равную 0: в неё будет записан наш ответ. Далее, создадим цикл for, необходимый для перебора значений
начала отрезка
. Внутри него, с помощью того же цикла, организуем перебор значений конца искомого отрезка. При
каждой итерации будем создавать переменную-флаг, которая изначально равна 0, а затем задавать отрезок
при помощи
функции range(). Внутри нижнего цикла необходимо начать перебор значений переменной
. Если выражение истинно
хотя бы для одного
, то флагу присваивается значение 1, а последний цикл останавливается. Если после перебора
всех значений флаг остаётся равным 0, значит выражение тождественно ложно для текущего отрезка
:
присваиваем его длину
, если она больше текущего значения данной переменной. В конце ответ выводится на
экран.
p = range(10, 15 + 1) # Задаём отрезок P q = range(5, 20 + 1) # Задаём отрезок Q k = range(15 + 1, 25 + 1) # Задаём отрезок K r = 0 # Длина отрезка A for a1 in range(1, 100): # Перебираем начало отрезка A for a2 in range(a1 + 1, 101): # Перебираем конец отрезка A f = 0 # Флаг, указывающий на ложность выражения при любых значениях переменной x a = range(a1, a2) # Задаём отрезок A for x in range(1, 1000): # Перебираем значения переменной x # Если при текущем значении переменной x выражение даёт истину (1), то if (((x not in a) <= (x in p)) == ((x in q) <= (x in k))) == 1: f = 1 # меняем значение флага на 1, break # останавливаем цикл и переходим к следующему отрезку A if f == 0: # Если значение флага не менялось, значит текущий отрезок A подходит r = max(len(a) - 1, r) # Сравниваем длину отрезка A с переменной r print(r) # Выводим ответ на экран
Специальные программы

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

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

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

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

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

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