Задания
Версия для печати и копирования в MS Word
Тип 2 № 27001
i

Ло­ги­че­ская функ­ция F задаётся вы­ра­же­ни­ем (xy ∧¬z) ≡ (yz ∨ ¬w). На ри­сун­ке при­ведён ча­стич­но за­пол­нен­ный фраг­мент таб­ли­цы ис­тин­но­сти функ­ции F, со­дер­жа­щий не­по­вто­ря­ю­щи­е­ся стро­ки. Опре­де­ли­те, ка­ко­му столб­цу таб­ли­цы ис­тин­но­сти функ­ции F со­от­вет­ству­ет каж­дая из пе­ре­мен­ных x, y, z, w.

 

????F
1111
001
111

 

В от­ве­те на­пи­ши­те буквы x, y, z, w в том по­ряд­ке, в ко­то­ром идут со­от­вет­ству­ю­щие им столб­цы. Буквы в от­ве­те пи­ши­те под­ряд, ни­ка­ких раз­де­ли­те­лей между бук­ва­ми ста­вить не нужно.

Спрятать решение

Ре­ше­ние.

За­ме­тим, что вы­ра­же­ние будем ис­тин­ным тогда, когда обе скоб­ки будут при­ни­мать зна­че­ние 0 или 1.

Рас­смот­рим первую стро­ку таб­ли­цы ис­тин­но­сти. За­ме­тим, что вы­ра­же­ние будет ис­тин­ным толь­ко тогда, когда пе­ре­мен­ная z будет равна 0, то есть стро­ка будет вы­гля­деть как 1101. Сле­до­ва­тель­но, пе­ре­мен­ной z со­от­вет­ству­ет тре­тий стол­бец.

Рас­смот­рим вто­рую стро­ку таб­ли­цы ис­тин­но­сти. Левая скоб­ка будет при­ни­мать зна­че­ние 0. Зна­чит, пе­ре­мен­ные y и z долж­ны при­ни­мать зна­че­ние 0, а пе­ре­мен­ная w долж­на при­ни­мать зна­че­ние 1. Таким об­ра­зом, стро­ка будет вы­гля­деть как 1000, а пе­ре­мен­ной w со­от­вет­ству­ет пер­вый стол­бец таб­ли­цы ис­тин­но­сти.

Рас­смот­рим тре­тью стро­ку таб­ли­цы ис­тин­но­сти. Тре­тья стро­ка может вы­гля­деть как 1001, 1011 и 1111. Пред­по­ло­жим, что пе­ре­мен­ная y со­от­вет­ству­ет четвёртому столб­цу таб­ли­цы ис­тин­но­сти. Тогда зна­че­ние вы­ра­же­ния во всех трёх слу­ча­ях будет лож­ным. Зна­чит, пе­ре­мен­ная y со­от­вет­ству­ет вто­ро­му столб­цу таб­ли­цы ис­тин­но­сти, а пе­ре­мен­ная x  — четвёртому.

 

Ответ: wyzx.

 

При­ведём дру­гое ре­ше­ние.

Со­ста­вим таб­ли­цу ис­тин­но­сти для вы­ра­же­ния (xy ∧¬z) ≡ (yz ∨ ¬w) вруч­ную или при по­мо­щи языка Python:

print("x y z w")

for x in range(0, 2):

for y in range(0, 2):

for z in range(0, 2):

for w in range(0, 2):

if (x and y and not(z)) == (y or z or not(w)):

print(x, y, z, w)

Далее вы­пи­шем те на­бо­ры пе­ре­мен­ных, при ко­то­рых дан­ное вы­ра­же­ние равно 1. В на­бо­рах пе­ре­мен­ные за­пи­шем в по­ряд­ке х, y, z, w. По­лу­чим сле­ду­ю­щие на­бо­ры:

(0, 0, 0, 1),

(1, 0, 0, 1),

(1, 1, 0, 0),

(1, 1, 0, 1).

Со­от­несём эти на­бо­ры с пред­став­лен­ным фраг­мен­том таб­ли­цы ис­тин­но­сти.

За­ме­тим, что пе­ре­мен­ная z при­ни­ма­ет един­ствен­ное зна­че­ние 0. Сле­до­ва­тель­но, это тре­тий стол­бец. Рас­смот­рим первую строч­ку ис­ход­ной таб­ли­цы ис­тин­но­сти: когда в зна­че­ни­ях три нуля, то по­след­нее будет 1, и это будет w. Зна­чит, пер­вый стол­бец  — w. Тогда по­след­ний стол­бик, ис­хо­дя из по­лу­чен­ных на­бо­ров,  — x. Остаётся вто­рой стол­бец  — y. По­лу­ча­ем по­сле­до­ва­тель­ность wyzx.


Аналоги к заданию № 27001: 27228 Все

Раздел кодификатора ФИПИ: 1.5.1 Вы­ска­зы­ва­ния, ло­ги­че­ские опе­ра­ции, кван­то­ры, ис­тин­ность вы­ска­зы­ва­ния