Бесплатный интенсив по информатике

3 огненных вебинара, домашние задания, беседа курса, личный кабинет, связь с преподавателем и многое другое.
Курс стартует 6 ноября.

Подробнее об интенсиве

Задание 2. Алгебра логики. Таблицы истинности. ЕГЭ 2025 по информатике

За это задание ты можешь получить 1 балл. На решение дается около 3 минут. Уровень сложности: базовый.
Средний процент выполнения: 65.9%
Ответом к заданию 2 по информатике может быть цифра (число) или слово.

Теория к 2 заданию: читать

Разбор сложных заданий в тг-канале

Задачи для практики

Задача 1

Дано логическое выражение, зависящее от 6 логических переменных:

¬(A → F) ∧ B ∧ ¬C ∧ (D → E).

Сколько существует различных наборов значений переменных, при которых выражение ложно?

Решение

Заметим, что все скобки и выражения связаны конъюнкцией, для которой сложно получить единицу. Поэтому будет решать от обратного. Посчитаем количество наборов, когда выражение истинно, тогда:

¬(A → F) = 1, тогда $A → F = 0$, следовательно, A = 1, F = 0.

B = 1.

¬C = 1, значит C = 0.

(D → E) = 1, тогда возможно 3 варианта: D = 0, E = 0; D = 0, E = 1; D = 1, E = 1.

Перемножим количество подходящих значений для каждой переменной: A, B, C, F - по одному набору, D и E - 3 набора. Итого:

1 х 3 = 3 набора, для которых вся функция истинна. Но нам нужно, чтобы функция была ложна. Найдём общее количество наборов по формуле $k = 2^N$, где N - количество переменных. У нас 6 переменных, значит всего наборов 64. Из них 3 нам не подходят. Тогда количество подходящих (ложных) наборов:

64 - 3 = 61.

Или при помощи программы на С++:

#include <iostream>
#include <algorithm>
#include <fstream>

using namespace std;

bool f(int A, int B, int C, int D, int E, int F){
return (!(!A || F) && B && !C && (!D || E));
}

int main() {
int count = 0;
for (int A = 0; A <= 1; ++A)
for (int B = 0; B <= 1; ++B)
for (int C = 0; C <= 1; ++C)
for (int D = 0; D <= 1; ++D)
for (int E = 0; E <= 1; ++E)
for (int F = 0; F <= 1; ++F)
if (f(A, B, C, D, E, F) == false)
count++;
cout << count;
return 0;
}

Ответ: 61.

Ответ: 61
Показать решение
Бесплатный интенсив

Задача 2

Дано логическое выражение, зависящее от 5 логических переменных:

$(A ∨ ¬B) ∧ (¬C ∨ D ∨ ¬E)$.

Сколько существует различных наборов значений переменных, при которых выражение ложно?

Решение

В первой скобке 2 переменных, значит для неё будет 4 набора. Поскольку переменные соединяются дизъюнкцией, выражение ложно ровно в одном случае, а в трёх оставшихся - истинно.

Во второй скобке 3 переменных, значит для неё будет 8 наборов. Поскольку переменные соединяются дизъюнкцией, выражение ложно ровно в одном случае, а в семи оставшихся - истинно.

Конъюнкция ложна, когда хотя бы одна скобка ложна. Рассмотрим 3 случая:

Первая скобка ложна, вторая истинна. Первая скобка ложна в 1 случае из 4, вторая истинна в 7 случаях из 8. Итого 7 · 1 = 7.

Первая скобка истинна, вторая ложна. Первая скобка истинна в 3 случаях из 4, вторая ложна в 1 случае из 4. Итого 1 · 3 = 3.

Первая скобка ложна, вторая ложна. Первая скобка ложна в 1 случае из 4, вторая ложна в 1 случае из 8. Итого 1 · 1 = 1.

Суммарно: 7 + 3 + 1 = 11.

Ответ: 11.

Ответ: 11
Показать решение
Бесплатный интенсив

Задача 3

Дано логическое выражение, зависящее от 5 логических переменных:

(¬A ∧ B ∧ C) ∨ (¬D ∧ ¬E).

Сколько существует различных наборов значений переменных, при которых выражение истинно?

Решение

В первой скобке 3 переменных, значит для неё будет 8 наборов. Поскольку переменные соединяются конъюнкцией, выражение истинно ровно в одном случае, а в семи оставшихся - ложно.

Во второй скобке 2 переменных, значит для неё будет 4 набора. Поскольку переменные соединяются конъюнкцией, выражение истинно ровно в одном случае, а в трёх оставшихся - ложно.

Дизъюнкция истинна, когда хотя бы одна скобка истинна. Рассмотрим 3 случая:

Первая скобка ложна, вторая истинна. Первая скобка ложна в 7 случаях из 8, вторая истинна в 1 случае из 4. Итого 7 · 1 = 7.

Первая скобка истинна, вторая ложна. Первая скобка истинна в 1 случае из 8, вторая ложна в 3 случаях из 4. Итого 1 · 3 = 3.

Первая скобка истинна, вторая истинна. Первая скобка истинна в 1 случае из 8, вторая истинна в 1 случае из 4. Итого 1 · 1 = 1.

Суммарно: 7 + 3 + 1 = 11.

Ответ: 11.

Ответ: 11
Показать решение
Бесплатный интенсив

Задача 4

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

        F
1 0 0 0 1
1 1 0 0 1
1 1 1 0 1

В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы (сначала букву, соответствующую 1-му столбцу; затем букву, соответствующую 2-му столбцу; затем букву, соответствующую 3-му столбцу; затем букву, соответствующую последнему столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Решение

Строим таблицу истинности для логической функции любым способом и находим наборы, при которых функция ложна. Например, при помощи программы:

bool f(int x, int y, int z, int w){
return (((x && z) || !x) && !w && y);
}

int main() {
cout << "x y z w F" << endl;
for (int x = 0; x <= 1; ++x)
for (int y = 0; y <= 1; ++y)
for (int z = 0; z <= 1; ++z)
for (int w = 0; w <= 1; ++w)
if (f(x, y, z, w) == true)
cout << x << " " << y << " "
<< z << " " << w << " " << f(x, y, z, w) << endl;
return 0;
}

Получили наборы:
x y z w F
0 1 0 0 1
0 1 1 0 1
1 1 1 0 1

Начинаем сопоставление с исходной тбалицей:
1) столбец без единиц четвёртый в таблице из условия - это W
2) столбец с одной единицей третий в исходной таблице - это X
3) столбей с тремя единицами - это Y
4) столбец с двумя единицами - это Z
Результат: YZXW

Ответ: yzxw
Показать решение
Бесплатный интенсив

Задача 5

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

        F
0 0 0 1 0
1 0 0 1 0
1 0 1 1 0

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала букву, соответствующую 1-му столбцу; затем букву, соответствующую 2-му столбцу; затем букву, соответствующую 3-му столбцу; затем букву, соответствующую последнему столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Решение

Строим таблицу истинности для логической функции любым способом и находим наборы, при которых функция ложна. Например, при помощи программы:

bool f(int x, int y, int z, int w){
return ((!y || w) || (!x && z));
}

int main() {
cout << "x y z w F" << endl;
for (int x = 0; x <= 1; ++x)
for (int y = 0; y <= 1; ++y)
for (int z = 0; z <= 1; ++z)
for (int w = 0; w <= 1; ++w)
if (f(x, y, z, w) == false)
cout << x << " " << y << " "
<< z << " " << w << " " << f(x, y, z, w) << endl;
return 0;
}

Получили наборы:
x y z w F
0 1 0 0 0
1 1 0 0 0
1 1 1 0 0

Начинаем сопоставление с исходной тбалицей:
1) столбец без единиц второй в таблице из условия - это W
2) столбец с одной единицей третий в исходной таблице - это Z
3) столбей с тремя единицами - это Y
4) столбец с двумя единицами - это X
Результат: xwzy

Ответ: xwzy
Показать решение
Бесплатный интенсив

Задача 6

Дан фрагмент таблицы истинности выражения F:

x1 x2 x3 x4 x5 x6 x7 x8 F
0 0 0 1 0 0 0 1 0
0 1 0 0 0 1 0 0 0
0 1 0 1 0 1 1 0 1
0 1 1 0 0 1 0 1 0
1 0 0 0 1 1 0 0 0
1 0 0 1 0 0 0 1 1
1 0 0 1 1 0 0 0 0
1 0 1 1 1 0 1 1 1
1 1 0 1 1 1 0 1 1
1 1 0 1 1 1 1 1 1

Сколько строк таблицы удовлетворяют выражению: F = (x1 ∨ x2 ∨ x3) ∧ x4 ∧ (x5 ∨ x6 ∨ x7) ∧ x8?

Решение

Данное выражение является конъюнкцией четырёх выражений. Конъюнкция нескольких высказываний истинна тогда и только тогда, когда истинными являются все входящие в неё высказывания. Следовательно, x4 = 1, x8 = 1 и в наборах значений переменных (x1, x2, x3), (x5, x6, x7) должна быть хотя бы одна 1.

Этим условиям удовлетворяют три последние строки таблицы. В каждой из этих строк значение функции F = 1. Следовательно, эти строки удовлетворяют заданному логическому выражению.

Чтобы остальные строки удовлетворяли заданному выражению, значение F должно быть равно 0. В таблице количество таких строк равно 5.

Всего значения 8 строк таблицы удовлетворяют заданному выражению.

Ответ: 8
Показать решение
Бесплатный интенсив

Задача 7

Логическая функция F задаётся выражением (¬x → y) ∧ (z → y). Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z.

Переменная 1
???
Переменная 2
???
Переменная 3
???
Функция
F
0 0 0 0
1 0 0 0
0 0 1 1
1 0 1 1
0 1 0 1
1 1 0 0
0 1 1 1
1 1 1 1

В ответе напишите буквы x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала — буква, соответствующая 1-му столбцу; затем — буква, соответствующая 2-му столбцу; затем — буква, соответствующая 3-му столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Пусть задано выражение x ∨ ¬y, зависящее от двух переменных x и y, и таблица истинности:

Переменная 1
???
Переменная 2
???
Функция
F
1 0 0
0 1 1
0 0 1
0 1 1

Тогда 1-му столбцу соответствует переменная y, а 2-му столбцу соответствует переменная x. В ответе нужно написать: yx.

Решение

Преобразуем исходное выражение.

(¬x → y) ∧ (z → y) = (x ∨ y) ∧ (¬z ∨ y) = y ∨ (x ∧ ¬z).

Так как дизъюнкция ложна только в том случае, когда ложны оба высказывания, входящие в неё, то переменной y должен соответствовать тот столбец, в котором значение 0 стоит в тех же строках, что и в столбце F. Следовательно, переменной y соответствует третий столбец.

Рассмотрим строку, в которой значение функции отличается от значения переменной y. Такой строкой является четвёртая снизу. Здесь переменная y = 0, а значение функции F = 1. Это означает, что x ∧ ¬z = 1. В рассматриваемой строке значение первого столбца 0, а второго 1. Пусть x = 0, z = 1. При этих значениях логическое выражение x ∧ ¬z ложно, что не соответствует табличному значению функции F = 1. Следовательно, x = 1, z = 0. Значит, первый столбец соответствует переменной z, а второй—x.

Или при помощи программы на С++:
Выводим только ложные наборы, потому что их меньше

#include <iostream>
#include <algorithm>
#include <fstream>

using namespace std;

bool f(int x, int y, int z){
return ((x || y) && (!z || y));
}

int main() {
cout << "x y z F" << endl;
for (int x = 0; x <= 1; ++x)
for (int y = 0; y <= 1; ++y)
for (int z = 0; z <= 1; ++z)
if (f(x, y, z) == false)
cout << x << " " << y << " "
<< z << " " << f(x, y, z) << endl;
return 0;
}
Ответ: zxy
Показать решение
Бесплатный интенсив

Задача 8

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

Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных w, x, y, z.

        F
1 1 0   0
1     1 0
    0 1 0

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала букву, соответствующую 1-му столбцу; затем букву, соответствующую 2-му столбцу; затем букву, соответствующую 3-му столбцу; затем букву, соответствующую последнему столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Если бы функция F была задана выражением x ∨ ¬y, зависящим от двух переменных x и y, а фрагмент таблицы истинности имел бы вид:

    F
1 0 0

тогда 1-му столбцу соответствовала бы переменная y, а 2-му столбцу — переменная x. В ответе следовало бы написать: yx.

Решение
Ответ: wyzx
Показать решение
Бесплатный интенсив

Задача 9

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

Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных w, x, y, z.

        F
1   0   0
  0   0 0
  0 1   0

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала букву, соответствующую 1-му столбцу; затем букву, соответствующую 2-му столбцу; затем букву, соответствующую 3-му столбцу; затем букву, соответствующую последнему столбцу). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.

Пример. Если бы функция F была задана выражением x ∨ ¬y, зависящим от двух переменных x и y, а фрагмент таблицы истинности имел бы вид:

    F
1 0 0

тогда 1-му столбцу соответствовала бы переменная y, а 2-му столбцу — переменная x. В ответе следовало бы написать: yx.

Решение
Ответ: zxyw
Показать решение
Бесплатный интенсив
Показать еще
<div class="container-fluid widget__container "> <div class="row"> <div class="col-12"> <div class="widget__text-content"><a name="theory"></a> <h2>Теория для 2 задания ЕГЭ по информатике</h2><br/> <p>Основная тема задания №2 — алгебра логики. С неё и начнём. Для успешного решения номера вам важно знать 3 теоретических момента:</p> <ol><li>Основные логические операции</li><li> Порядок логических операций</li><li> Законы логики</li></ol> <h3>Основные логические операции</h3> <p><b>1. Инверсия «НЕ»</b><br> Логическое отрицание<br> Обозначения: ¬А, Ā<br> Меняет значение на противоположное </p> <div class="pic"> <img alt ="Таблица истинности для инверсии" src="https://sun9-18.userapi.com/c206828/v206828314/735db/cP0N69uxQnM.jpg"> <div class="pic-alt">Таблица истинности для инверсии </div> </div> <br> <p><b>2. Конъюнкция «И»</b><br> Логическое умножение<br> Обозначения: А∧В, А & В, А и В, AB<br> Принимает значение «истина», когда все значения единицы.<br> Хотя бы один 0 обнуляет всё. </p> <div class="pic"> <img alt ="Таблица истинности для конъюнкции" src="https://sun9-45.userapi.com/c206828/v206828314/735fc/1Kh3f4SIMJ8.jpg"> <div class="pic-alt">Таблица истинности для конъюнкции </div> </div> <br> <p><b>3. Дизъюнкция «ИЛИ»</b><br> Логическое сложение<br> Обозначения: А∨В, А | В, А или В<br> Принимает значение «истина», когда хотя бы одна единица. «Ложь», когда все нули. </p> <div class="pic"> <img alt ="Таблица истинности для дизъюнкции" src="https://sun9-58.userapi.com/c206828/v206828314/73661/I0z8q3IGOY0.jpg"> <div class="pic-alt">Таблица истинности для дизъюнкции </div> </div> <br> <p><b>4. Импликация "Если, то"</b><br> Следование<br> Обозначения: А→В, А => В<br> Из истины следует истина, из лжи что угодно </p> <div class="pic"> <img alt ="Таблица истинности для импликации" src="https://sun9-33.userapi.com/c206828/v206828314/73678/IcO6SbSPK0c.jpg"> <div class="pic-alt">Таблица истинности для импликации </div> </div> <br> <p><b>5. Эквивалентность «Равны»</b><br> Тождество<br> Обозначения: А≡В, А <=> В<br> Иcтина, когда значения одинаковы. Ложь, когда различны </p> <div class="pic"> <img alt ="Таблица истинности для эквивалентности" src="https://sun9-18.userapi.com/c206828/v206828314/73699/PZwkzFXFv20.jpg"> <div class="pic-alt">Таблица истинности для эквивалентности </div> </div> <h3>Порядок логических операций</h3> <ol> <li>Действия в скобках</li> <li>Инверсия</li> <li>Конъюнкция</li> <li>Дизъюнкция</li> <li>Импликация</li> <li>Эквивалентность</li> </ol> <h3>Законы логики</h3> <p>Законов логики существует огромное количество, но именно для ЕГЭ достаточно знать 10 законов из данной таблицы. Некоторые из них очевидные, некоторые придётся выучить.</p> <div class="pic"> <img alt ="Законы логики" src="https://sun9-8.userapi.com/c206828/v206828314/736b6/NzcX3keRauc.jpg"> <div class="pic-alt">Законы логики </div> </div> <br> <h2>Практика</h2> <p >Основных вариантов решения два: логические рассуждения, либо построение таблицы истинности. Иногда проще решать первым методом, иногда вторым.</p><p><strong>Первый метод. Логические рассуждения.</strong></p><p>Пример:</p><p>Логическая функция F задаётся выражением y &#8743; (x &#8594; z) &#8743; ¬w. Во фрагменте таблицы истинности приведены все строки, при которых значение функции F истинно.Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.</p> <div class="pic"> <img alt ="Статистика выполнения задания 13 ЕГЭ по профилю по годам" src="https://sun9-16.userapi.com/c206816/v206816647/7223c/wPstBew50kE.jpg"> </div> <p>Решение:</p><p >Итоговая функция всегда истинна для нашей таблицы (единички в значениях F). Заметим, что в последнюю очередь выполняются две конъюнкции, значение которых будет = 1 только тогда, когда значение каждого выражение равно 1.</p><p >Вывод:<br/>y = 1<br/>(x &#8594; z) = 1<br/>¬w = 1,а значит w = 0</p><p >y всегда 1, такой столбик лишь один: y — переменная 4<br/>w всегда 0, такой столбик лишь один: w — переменная 2</p><p>Для x и z остаётся переменная 1 и переменная 3. Осталось определится с порядком.<br/>(x &#8594; z) = 1, значит <strong>не</strong> может быть набора, когда x = 1, а z = 0. <br/>Во второй строчке перем1 = 1, а перем3 = 0. Следовательно, z — переменная 1, x — переменная 3.</p><p>z — переменная 1<br/>w — переменная 2<br/>x — переменная 3<br/>y — переменная 4<br/><strong>Ответ: zwxy</strong></p><p><strong>Второй метод. Таблица истинности</strong></p><p>Пример:</p><p>Логическая функция F задаётся выражением (y &#8594; w) &#8744; (¬x &#8743; z). Во фрагменте таблицы истинности приведены все строки, при которых значение функции F ложно. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.</p> <div class="pic"> <img src="https://sun9-34.userapi.com/c206816/v206816688/71a7a/-FrPVTCKirU.jpg"> </div> <p>Решение:</p><p >Итоговая функция всегда равна нулю. Между скобками дизъюнкция, значит обе скобки должны быть ложными. Рассмотрим каждую скобку отдельно:</p><p>y &#8594; w = 0</p> <div class="pic"> <img src="https://sun9-64.userapi.com/c206816/v206816688/71aae/uOfc3I2jO7U.jpg"> </div> <p>¬x ∧ z = 0</p> <div class="pic"> <img src="https://sun9-37.userapi.com/c206816/v206816688/71abf/V1SE44S4GfM.jpg"> </div> <p>Объединяем все переменные в одну таблицу:</p> <div class="pic"> <img src="https://sun9-58.userapi.com/c206816/v206816688/71ad8/ZOSQalFGIR0.jpg"> </div> <p>Соотносим её с таблицей из условия:<br> y — переменная 4<br> w — переменная 2<br> x — переменная 1<br> z — переменная 3<br> <b>Ответ: xwzy</b></p></div> </div> </div> </div>

Бесплатный интенсив по информатике

3 огненных вебинара, домашние задания, беседа курса, личный кабинет, связь с преподавателем и многое другое.
Курс стартует 6 ноября.

Бесплатный интенсив