Основы дискретной математики

Таблица 6.2 – Формулы, описывающие функции в базисах F0 и F2

Fi

Формулы в базисах F 0 и F2

f6

(x1Åx2)=ù(`x1×`x2)×ù(x1×x2) <

/td>

f7

(x1Úx2)=ù(`x1×`x2)

f8

(x1¯x2)=(`x1×`x2)

f9

(x1«x2)=ù(x1×`x2)×ù(`x1×x2)

f13

(x1®x2)=ù(x1×`x2)

f14

(x1÷x2)=ù(x1×x2)

Таблица 6.3 – Формулы, описывающие функции в базисах F0 и F3

Fi

Формулы в базисах F 0 и F3

f6

(x1×x2)=ù(`x1Ú`x2)

f7

(x1Åx2)=ù(`x1Úx2)Úù(x1Ú`x2)

f8

(x1¯x2)=ù(x1Úx2)

f9

(x1«x2)=(x1Úx2)Úù(`x1Ú`x2)

f13

(x1®x2)=(`x1Úx2)

f14

(x1½x2)=(`x1Ú`x2)

Таблица 6.4 – Формулы, описывающие функции в базисах F0 и F6

Fi

Формулы в базисах F 0 и F 6

f1

(x1×x2)=(x1½x2)½(x1½x2)

f6

(x1Åx2)=[x1½(x2½x2)]½[x2½ (x1½x1)]

f7

(x1Úx2)=(x1½x2)½(x1½x2)

f8

(x1¯x2)=[(x1½x1)½(x2½x2)½ (x2½x2)]

f9

(x1«x2)=[(x1½x1)½(x2½x2)]½ (x1½x2)]

f13

(x1®x2)=(x1½(x2½x2).

6.2 Практическая часть

6.2.1 Задание к работе

1. Минимизировать функции с помощью карт Карно или таблицы Куайна.

2. Используя средства Excel и Delphi, построить таблицы истинности заданных логических функций.

3. Сделать выводы.

6.2.2 Примеры выполнения

Пример 1.

Задание:

1. Минимизировать функции с помощью таблицы Куайна.

2. Используя программные средства Delphi, построить таблицы истинности заданных логических функций.

1 Минимизация с помощью таблицы Куайна:

Пусть функция F представлена в виде СДНФ

F1СДНФ =

Таблица 6.5 – таблица Куайна

х1x2x3

001

101

110

111

0 0 1

1 – 1

1 1 –

1

1

1

1  

Упростим F1СДНФ, получим:

F1МДНФ=

Как мы видим, результат, полученный по таблице Куайна, совпадает с F1МДНФ.

Рисунок 6.1 – Графический интерфейс

2 Процедура основного обработчика

procedure TForm1. BitBtn1Click (Sender: TObject);

Var i:byte;

x1, x2, x3:boolean;

begin

for i:=1 to 8 do begin

StringGrid1. Cells [0, i]:=IntToStr (i‑1);

If i<=4 then StringGrid1. Cells [1, i]:='0' else StringGrid1. Cells [1, i]:='1';

If (i<=2) or ((i>=5) and (i<7)) then StringGrid1. Cells [2, i]:='0' else StringGrid1. Cells [2, i]:='1';

If (i mod 2>0) then StringGrid1. Cells [3, i]:='0' else StringGrid1. Cells [3, i]:='1';

If i<=4 then StringGrid1. Cells [4, i]:='1' else StringGrid1. Cells [4, i]:='0';

If (i<=2) or ((i>=5) and (i<7)) then StringGrid1. Cells [5, i]:='1' else StringGrid1. Cells [5, i]:='0';

x1:=StrToBool (StringGrid1. Cells [1, i]);

x2:=StrToBool (StringGrid1. Cells [2, i]);

x3:=StrToBool (StringGrid1. Cells [3, i]);

if (not (x1) and not (x2) and x3) or (x1 and x3) or (x1 and x2)

then StringGrid1. Cells [6, i]:='1'

else StringGrid1. Cells [6, i]:='0';

end; end;

Пример 2. Пусть будут заданы номера наборов четырех переменных, на которых логическая функция принимает единичное значение: f (2,5,6,7,10,12,13,14)=1.

Выразим эту логическую функцию в СДНФ (символ конъюнкции писать не будем):

f (0010,0101, 0110, 0111, 1010, 1100, 1101, 1110) =

.

Таблица 6.6 – карта Карно для функции 4‑х переменных

 

 

1100

1110

0110

0100

1101

1111

0111

0101

1001

1011

0011

0001

1000

1010

0010

0000

 

 

Страница:  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15 
 16  17  18  19  20  21  22  23  24  25  26  27  28  29  30 
 31  32  33  34  35  36 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы