Форум » Логические выражения » 15 задание №285 » Ответить

15 задание №285

ТеплыхИБ: 285) На числовой прямой даны отрезки A = [30; 62], B = [25; 38] и C = [40; N] и функция F(x) = (not (x in B) <= not (x in A) ) and (not (x in C) <= (x in B) ) При каком наименьшем числе N функция F(x) истинна более чем для 20 целых чисел x? Мое решение [pre2] a1,a2,b1,b2, c1=30,62,25,38,40 a=[ i for i in range(a1,a2+1)] b=[i for i in range(b1, b2+1)] for c2 in range(41,100): k=0 c=[i for i in range(c1,c2+1)] for x in range(0,100): if (((x in b) or (x not in a)) and ((x in c) or (x in b)))==0: k+=1 if k>20: print (c2, k) break [/pre2] дает 41, в ответе - 69. Что не так?

Ответов - 3

Поляков: Не решайте задачи на отрезки с помощью программы. Вы замучаетесь по граблям ходить.

ТеплыхИБ: А руками действительно сошлось... Если будет время, все равно программу поковыряю. Самой интересно, где косяк

oval: ТеплыхИБ пишет: А руками действительно сошлось... Если будет время, все равно программу поковыряю. Самой интересно, где косяк У Вас k увеличивается для х=0, а не должен. Первый раз k надо увеличить для 25




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