Тёмный

Разбор 15 задания на Python | ЕГЭ по информатике 2021 

Иван Викторович
Подписаться 261 тыс.
Просмотров 75 тыс.
50% 1

Задание 15 - Анализ истинности логического выражения. Решение на языке программирования Python типовых заданий.
Не забываем подписываться!
------
Задания взяты отсюда: www.kpolyakov....
------
Все уроки по Python: • Python с нуля. Урок 1 ...
------
Telegram: t.me/plugar_inf
Группа в ВК: plugar_inf
Rutube: rutube.ru/chan...
#егэ #информатика #разбор

Опубликовано:

 

29 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 97   
@АлесандрКашапов
@АлесандрКашапов 2 года назад
Зашёл сюда, чтобы посмотреть, как автор будет решать задания со множествами грубой силой, но, видимо, не судьба....
@kerssi9372
@kerssi9372 2 года назад
Почему мы берём значение A от 1? В одном задании решу егэ ответ правильный только если от 0 осуществлять перебор
@михаилкиселёв-н5г
@михаилкиселёв-н5г 2 года назад
Говорят про положительные числа, 0 - нейтральное
@Darrkon
@Darrkon 11 месяцев назад
@@михаилкиселёв-н5г я только что загуглил ноль это целое число
@ЕленаМолодцова-ь9ш
Очень понятное объяснение. Разобраны все прототипы задания 15. Долго искала такое видео. Спасибо огромное!
@eisen_5079
@eisen_5079 3 года назад
я закончил 9 класс, только что смотрел ваш урок по python про циклы, и вот сразу нашел где это может понадобиться)
@ЮрийПименов-р8о
@ЮрийПименов-р8о 2 года назад
Иван, большое спасибо за твои разъяснения, всегда всё по делу. А как решать на Питоне задачу, когда изменяются две переменные (т.е. не на прямой, а на плоскости)? Например, вот эта: # На числовой прямой задан отрезок A. Известно, что формула #((x ∈ A) → (x**2 ≤ 81)) ∧ ((y**2 ≤ 36) → (y ∈ A)) # тождественно истинна при любых вещественных x и y. Какую наибольшую #длину может иметь отрезок A?
@kuzmitchmax5556
@kuzmitchmax5556 2 года назад
Не получается решить задачу с отрезками, когда в логическом уравнении присутствует тождественное равенство. Выдает ответ на единицу меньше.
@jeyfik1511
@jeyfik1511 6 месяцев назад
Можешь сказать почему так?
@kakayatoalya6971
@kakayatoalya6971 3 года назад
лайк авансом
@denismedzmariashvili259
@denismedzmariashvili259 5 месяцев назад
А вот в последней задаче разве не a2 - a1 + 1? Допустим отрезок от 10 до 12, у нас же 2 числа подходят, а 3: 10, 11, 12. Так же и на большем промежутке. Я ошибаюсь, почему?
@Vladovello
@Vladovello 3 года назад
Очень хорошо объясняете, спасибо!
@НарминаМахмудова-ц5е
За последнюю задачу лайк!
@ИльяМартынов-я8м
@ИльяМартынов-я8м 5 месяцев назад
Код на отрезки не рабочий, при использовании ответ всегда будет с погрешностью в единицу
@ovgubkina
@ovgubkina 2 года назад
Очень интересно про отрезки! Про делимость и с координатами уже делала подобным способом
@marinakorovina5262
@marinakorovina5262 3 года назад
Спасибо, все оч. логично и поэтому понятно. Еще раз спасибо.
@MrKirby-es5nf
@MrKirby-es5nf 3 года назад
Подскажите, у меня всегда ответ на 1 меньше от правильного. ЗАДАНИЕ На числовой прямой даны два отрезка: Р = [22, 72] и Q = [42, 102]. Какова наименьшая возможная длина интервала A, что логическое выражение ¬(¬(х ∈ А) ∧ (х ∈ Р)) ∨ (х ∈ Q) тождественно истинно, то есть принимает значение 1 при любом значении переменной х. (ОТВЕТ:20) ПРОГА s=[] for A1 in range(1,100): for A2 in range(1,100): flag=0 for x in range(-100,100): if (not(not(A1
@leodinf
@leodinf 3 года назад
бро абсолютно то же самое, причем не на одну прогу, у меня на каждую вторую ответ получается на 1 меньше или на 1 больше от правильного если разобрался в чем проблема поясни пожалуйста!
@plugar_inf
@plugar_inf 3 года назад
проблема в знаках, если есть отрицание, то когда вы ставите not, одно неравенство должно быть строгое
@leodinf
@leodinf 3 года назад
@@plugar_inf , здравствуйте! благодарю за ответ. В своем видео вы не разобрали подобный тип заданий: Сколько существует целых значений числа A, при которых формула ((x < 5) → (x2 < A)) /\ ((y2 ≤ A) → (y ≤ 5)) тождественно истинна при любых целых неотрицательных x и y? В таких заданиях у переменной a наблюдается фиксированный промежуток...
@MrKirby-es5nf
@MrKirby-es5nf 3 года назад
@@plugar_inf спасибо!
@otecvladislav8312
@otecvladislav8312 3 года назад
@@plugar_inf Знак должен быть строгим только в выражении "a"? То есть если перед выражением "a" стоит "not", тогда в скобках один знак строгий, а другой нет?
@Happy-wt9dy
@Happy-wt9dy 2 года назад
Почему при идентичном(условия разные) коде у меня значение получается всегда на 1 меньше? Вот задача: На числовой прямой даны два отрезка: D = [17; 58] и C = [29; 80]. Укажите наименьшую возможную длину такого отрезка A, для которого логическое выражение (x ∈ D) → ((¬(x ∈ C)∧ ¬(x ∈ A)) → ¬(x ∈ D)) истинно (т. е. принимает значение 1) при любом значении переменной х. Вот решение: s=[] for a1 in range(0, 101): for a2 in range(0, 101): F = True for x in range(0, 101): F*=((17
@pellonezza2888
@pellonezza2888 2 года назад
Скорее всего здесь работает принцип +- 1, когда длина и интервал - это разные вещи. В одном случае мы вычитаем единицу из полученной разности, в другой оставляем как есть. Погугли это)
@ЦЫБУЛЬКОКАКЖЕЯТЕБЯНЕНАВИЖУ
Спасибо Вам большое. Были трудности с некоторыми типами 16 задания. Благодаря Вам полностью разобрался. Сейчас буду изучать 15 по вашему видеоролику.
@Nekrasov_all
@Nekrasov_all 2 года назад
Ребят, срочно нужна ваша помощь. В последней задаче перед выражением в скобках к примеру может стоять знак отрицания. Но я не понимаю как это правильно записать в программе, так как когда пишу просто not перед скобкой, выводится неверный ответ. Буду очень признателен🙏
@михаилкиселёв-н5г
@михаилкиселёв-н5г 2 года назад
надо скорее всего not(condition) обернуть в (not(condition))
@Nekrasov_all
@Nekrasov_all 2 года назад
@@михаилкиселёв-н5г вроде бы так и делал, в любом случае попробую еще раз, спасибо!
@РусяВ-г8е
@РусяВ-г8е 2 года назад
а как написать, если x не равен A
@treehouse7766
@treehouse7766 3 года назад
А что делать, если выражение тождественно ложно? Например: Для какого наибольшего целого неотрицательного числа А выражение (x < A) and (y < A) and (x * y > 601) тождественно ЛОЖНО, т.е. принимает значение 0 при любых целых положительных x и y?
@ТамирланФирреро
@ТамирланФирреро 3 года назад
Из строки if not (f(x, y, a)): убираем not. Таким образом, мы исключаем все случаи, когда выражение истинно.
@treehouse7766
@treehouse7766 3 года назад
@@ТамирланФирреро , огромное спасибо.
@dmitrykorolev2089
@dmitrykorolev2089 2 года назад
По задаче №1. Поясните для тех, кто в танке, почему мы производим перебор А до первого значения False указанного выражения, если задача стоит найти наименьшее А для истинного значения выражения, то есть значения True. То есть, исходя из конечного результата, должно быть так. Мы проверяем А поочередно 1,2,3...., при которых выражение показывает False, и как только мы доходим до А = 15, выражение принимает значение True. После этого мы останавливаем алгоритм. Или я не так понимаю?
@Darrkon
@Darrkon 11 месяцев назад
в первой задаче надо было у X и Y поставить значения от 0 до 1001 потому что ноль это тоже целое число и при таких значениях ответ будет не 15 ,а 16
@Кэйти-щ6з
@Кэйти-щ6з 4 месяца назад
ЛУЧШИЙ
@qsandr.noff.7696
@qsandr.noff.7696 2 года назад
в точности скопировал показанную в начале видеоролика программу и получил в выводе 1, а не 15 wtf?!
@randerry897
@randerry897 3 года назад
Здравствуйте, как решать отрезки, если их будет не 2(как в видео), а 3?
@StrandTimofey
@StrandTimofey 3 года назад
Просто вложить ещё цикл или аналитически
@fantomchik9366
@fantomchik9366 2 года назад
Не знаю что было год назад. Но в этом году другая версия кумир.
@Элли-т8ф
@Элли-т8ф 2 года назад
Спасибо вам огромное!
@михаилкиселёв-н5г
@михаилкиселёв-н5г 2 года назад
самое время начать готовиться
@Furry_Turtle
@Furry_Turtle 2 года назад
Легендарен
@MysticTzy
@MysticTzy 3 года назад
Почему не получается на программах на смартфоне вывести ответ? Питон пишет, что программа закончена, но ответа нет. В другом приложении вообще ничего не выдает, в чем проблема?
@JamesMcGregor-hu9ck
@JamesMcGregor-hu9ck 3 года назад
потому что надо решать на компьютере
@diperss
@diperss 2 года назад
Интересно, как питон понимает где импликация, а где меньше или равно)
@bigbratok672games9
@bigbratok672games9 2 года назад
импликация по факту и есть меньше или равно)
@marksuperior4801
@marksuperior4801 2 года назад
А как меняется код, если в последнем типе вместо истины нужно искать ложь?
@михаилкиселёв-н5г
@михаилкиселёв-н5г 2 года назад
Если имеешь ввиду, что все значения должны быть истинными, то if (condition) == True: flag = False Далее также, как в любом примере
@ryderninja6238
@ryderninja6238 2 года назад
8:25
@shazam8432
@shazam8432 3 года назад
Здравствуйте, а у вас на канале есть видео как решать задание с двумя промежутками(P=[10,29] и Q=[13,18] без проги? Если да подскажите как оно называется.
@sashailoveyou7312
@sashailoveyou7312 3 года назад
просто отмечаешь точки на отрезке и по логике делаешь. Если не понятно то посмотри ролик информатика Роди по 15.
@forz0000
@forz0000 2 года назад
Ошалеть просто хаха
@pihie
@pihie 2 года назад
всмысле то есть поразрядная коньюнкция это то же самое что и обычное "и"???? почему вы делаете когда х и 13 в условии просто ставите х&13 сказано что делается это с помощью поразрядной коньюнкции, это просто x&13???
@plugar_inf
@plugar_inf 2 года назад
Это и есть оператор поразрядной коньюнкции
@pihie
@pihie Год назад
@@plugar_inf обычное "и" между числами?
@ЦЫБУЛЬКОКАКЖЕЯТЕБЯНЕНАВИЖУ
Здравствуйте. Помогите пожалуйста решить задачу. Задача: Укажите наибольшее целое значение А, при котором выражение (y + 3x ≠ 60) ∨ (2x > A) ∨ (y > A) истинно для любых целых положительных значений x и y. Мое решение: def f(x, y, a): return (((y + 3*x) != 60) or (2*x > a) or (y > a)) for a in range(1, 1001): key = True for x in range(1, 1001): for y in range(1, 1001): if not(f(x, y, a)): key == False break if key == False: break if key == True: print(a) Программа почему-то выводит мне числа от 1 и дальше без остановки. Хотя в ответах написано 29...
@oligano
@oligano 3 года назад
Ответ к этому заданию: 23 for A in range(1, 1001): c=0 for x in range(1, 1001): for y in range(1, 1001): if ((y + 3*x != 60) or (2*x > A) or (y > A))==0: c=1 break if c==0: print(A)
@ЦЫБУЛЬКОКАКЖЕЯТЕБЯНЕНАВИЖУ
@@oligano спасибо) Я нашел ошибку в своем коде. Вместо = поставил == и поэтому выдавало ошибку)
@jur339
@jur339 2 года назад
Спасибо. Отличный разбор
@ЛейлаХабибуллина-й3у
спасибо большое, все очень понятно!!
@pentiumb9802
@pentiumb9802 3 года назад
Спасибо
@АлексейЁрочкин-й6ы
Всё понравилось, спасибо
@СофьяШулакова-п3н
@СофьяШулакова-п3н 2 года назад
Подскажите пожалуйста, почему у меня при подсчёте наибольшего значения считает до 1000 если я беру in range(1,1001), до 1001 если я беру (1,1002) и т.д :(((
@fariznasibov1881
@fariznasibov1881 2 года назад
В range первое число берется в промежуток, а последнее нет. Математически выглядит так: range(1, 1001) ----> [1, 1001) range(1, 1002) ----> [1, 1002) То есть последнее число не учитывается)
@СофьяШулакова-п3н
@СофьяШулакова-п3н 2 года назад
@@fariznasibov1881 это понятно. Но ответ в задачах к меня неправильный потому что программа улетает считать до вот этого предпоследгего числа
@fariznasibov1881
@fariznasibov1881 2 года назад
@@СофьяШулакова-п3н а до какого вам числа нужно? Ну или скиньте программу или задачу, постараюсь помочь)
@андрейпрохоров-ж3ъ
Иван Викторович, мы решаем задания из егэ на Python, а на самом экзамене будет возможность им пользоваться?
@plugar_inf
@plugar_inf 3 года назад
Конечно!
@DANYAPONOMAREV
@DANYAPONOMAREV 3 года назад
@@plugar_inf Расскажите в двух словах, как закодить множества?
@arno894
@arno894 3 года назад
что значит функция def и return?
@plugar_inf
@plugar_inf 3 года назад
это объявления функции в языке python
@wellplayed1947
@wellplayed1947 3 года назад
А как быть, если в 1 типе заданий спрашивают не' наименьшее целое значение А', а 'Сколько существует целых значений числа A' ?
@ТимурАмиров-п3н
@ТимурАмиров-п3н 3 года назад
сделай счетчик в цикл
@dedushkapul847
@dedushkapul847 2 года назад
Видео посмотри до конца
@wellplayed1947
@wellplayed1947 2 года назад
@@dedushkapul847 уже не нужно, год как бы прошел
@DANYAPONOMAREV
@DANYAPONOMAREV 3 года назад
А как множества закодить?
@plugar_inf
@plugar_inf 3 года назад
их лучше руками, на следующем стриме покажу
@skliksklok7529
@skliksklok7529 3 года назад
Доброго времени суток. Подскажите пожалуйста, а как записать в питоне выражение где перед промежутком стоит знак отрицания. например: ¬(x ∈ P) ∨ ¬(x ∈ Q) ∨ (x ∈ A). / P = [130; 171] и Q = [150; 185]
@blackplayer1248
@blackplayer1248 3 года назад
Ты можешь просто перед скобкой написать not not(130
@skliksklok7529
@skliksklok7529 3 года назад
@@blackplayer1248 да я пробовал так делать. компилятор в таком случае ничего не выдаёт
@blackplayer1248
@blackplayer1248 3 года назад
​@@skliksklok7529 def f(a1, a2, x): return not(130
@treehouse7766
@treehouse7766 3 года назад
@@blackplayer1248, пожалуйста. А что делать, если выражение тождественно ложно? Например: Для какого наибольшего целого неотрицательного числа А выражение (x < A) and (y < A) and (x * y > 601) тождественно ЛОЖНО, т.е. принимает значение 0 при любых целых положительных x и y?
@blackplayer1248
@blackplayer1248 3 года назад
@@treehouse7766 Всё то же самое, только меняешь flag с True на False def f(a, x, y): return (x < a) and (y < a) and (x * y > 601) for a in range(0, 300): flag = False for x in range(0, 300): for y in range(0, 300): if f(a, x, y): flag = True break if flag == False: print(a) Последнее выведенное значение будет ответом
@sneix3870
@sneix3870 3 года назад
Со скольки лет надо начинать учить языки программирования?
@BigStream100
@BigStream100 3 года назад
Возраст не влияет на это, я ещё в 7 классе этим заинтересовался, сейчас мне 21 и я продолжаю изучать. Чем раньше, тем лучше
@sneix3870
@sneix3870 3 года назад
@@BigStream100 ну я 5 класс закончил, и не очень понимаю математику в программировании( в программировании математика 7-8 класса)
@BigStream100
@BigStream100 3 года назад
@@sneix3870 математики там минимум на начальном этапе точно, основное это логика. Советую начать с написания скриптов для игр, даже самые простые скрипты из нескольких строк помогут понять что к чему и разобраться с логикой в программировании, большинство языков работают по одному принципу, так что выбирать можно любой, я начинал с языков C, C#. Ещё можно делать простые сайты на html, там тоже ничего сложного, простые теги и их параметры, просто чтобы начать понимать логику. А дальше уже как пойдет и что ближе к тебе будет.
@sneix3870
@sneix3870 3 года назад
@@BigStream100 А Python для новичка не надо изучать? Я его сейчас начал изучать
@BigStream100
@BigStream100 3 года назад
@@sneix3870 Можно любой язык, питон тоже актуальный и не сложный
@kallionrx4597
@kallionrx4597 3 года назад
а как в пайчарме сделать шаг с входом в подпрограмму (как на паскале)?
@anti_middle_ages
@anti_middle_ages 2 года назад
1. Внутри оператора if не ставят равенство. 2. Само выражение лучше вынести в отдельную функцию. 3. Вместо флага проще использовать оператор else для цикла for и сделать break, т.к. дальнейшее выполнение внешного цикла нам не интересно. Либо внешний цикл сделать через while и привязать к флагу.
@m8eight
@m8eight 6 месяцев назад
нет
Далее
Новый вид животных Supertype
00:59
Просмотров 211 тыс.
Новый вид животных Supertype
00:59
Просмотров 211 тыс.