Форум » Логические выражения » #T30238 из Яндекс Репетитора » Ответить

#T30238 из Яндекс Репетитора

Nonverbis: https://yandex.ru/tutor/subject/problem/?problem_id=T30238 Это: Год - 2020 Вариант - 46 Задача 2 Вот задание: Решаем: [pre2]for w in range(2): for x in range(2): for y in range(2): for z in range(2): f = ((y == w) or (z <= w)) and (y == (x or z)) if f == True: print (w, x, y, z)[/pre2] Результат: [pre2] 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 1 1 1 1 0 1 1 1 1[/pre2] Что мы видим? Таблица в задании неполна. В таблице-то три строки. А на деле их - 6. Если я, конечно, не наошибался где-то. Я только начал изучать формат ЕГЭ, если что, прошу не бить сильно. Скажите, пожалуйста, это заурядная ситуация, что в задании содержится неполная таблица?

Ответов - 2

1llumi: Это нормально. Ты же перебираешь просто всевозможные комбинации и смотришь, когда выражение истинно, далее тебе просто надо сопоставить таблицу с тем, что тебе выдала программа. Кстати, вместо range(2), можно написать 0, 1. Вместо f==True, просто f

Ж: [pre2] from itertools import * # это импорт библиотеки для использования функции product for (x,y,z,w) in product([0,1], repeat=4): if ((y == w) or (z <= w)) and (y == (x or z)) : print(z,y,x,w) [/pre2] Меняем порядок букв при выводе их на печать, пока не обнаружим совпадение 3 строк с таблицей. в случае такого порядка z,y,x,w смотрим на выведенные строки под номерами 4, 3, 5 - они соответствуют таблице 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 0 1 1 1 1 1 1 1



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