← Все вопросы

сднф как составить — есть таблица истинности, надо построить выражение, ничего не понимаю

Задан 12 месяцев назад1.2к просмотров2 ответа
6

Дана таблица истинности, и нужно по ней восстановить логическое выражение в СДНФ. Учитель показал на доске, но я списать не успел и теперь сижу как баран.

Вот моя таблица для функции F(A,B):

A B F
0 0 1
0 1 0
1 0 1
1 1 0

Как из этого собрать формулу? Что вообще такое эти «совершенные» дизъюнкции и где там отрицания ставить?

2 ответа

12
✓ Принятый ответ — помог автору

СДНФ строится по строкам, где F = 1. Алгоритм такой:

  1. Берёшь каждую строку с F=1.
  2. Для неё пишешь конъюнкцию (И) всех переменных: если переменная в этой строке = 1, берёшь её как есть, если = 0 — берёшь с отрицанием (НЕ).
  3. Все такие конъюнкции соединяешь через ИЛИ.

У тебя F=1 в двух строках:

  • строка A=0, B=0 → оба нуля, значит оба с отрицанием: НЕ A И НЕ B
  • строка A=1, B=0 → A=1 (как есть), B=0 (с отрицанием): A И НЕ B

Соединяем через ИЛИ:

F = (НЕ A И НЕ B) ИЛИ (A И НЕ B)

Это и есть СДНФ. Можно даже упростить (вынести НЕ B): F = НЕ B И (НЕ A ИЛИ A) = НЕ B. Логично — посмотри в таблицу, F=1 ровно там, где B=0.

Запомни кричалку: «единица — И-строчка; ноль у переменной → ставим НЕ; строки соединяем ИЛИ». По нулям строки не трогаем вообще (это уже для СКНФ, другая тема).

3

Главное не перепутать: СДНФ — собираем по единицам, внутри одного набора всё через И, между наборами через ИЛИ. Ноль у переменной = отрицание этой переменной.

Количество скобок в СДНФ = сколько единиц в столбце F. У тебя две единицы → две скобки, всё сходится.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект