カルノー図による簡単化
カルノー図を用いて論理関数の簡単化を行うプログラムを作っているのですが、
変数の入力からカルノー図の表示まで出来たものの、最簡形を求めるところで行き詰まってしまいました。
以下今時点での実行結果です。
(変数:小文字は偽、大文字は真を表しています)
abd
AbCd
AD
ABD
(カルノー図:'_'は空白を表しています)
1___
__11
__11
1__1
いまカルノー図はchar型で宣言しています。
最簡形を求めるには、カルノー図の2^i(i=0,1,2…)個の'1'を長方形または正方形になるようにループで囲んでいき、すべての1を囲むまでこれを行う。
(ループは重なっても構わない。また一番上と下の項はつながっており、一番右と左の項はつながっている)
そして各ループを積項表現をすると主項が得られる。
最後に全主項をORで結ぶことにより、最簡形が得られる。
もしアドバイス等いただける方、回答できる方、いらっしゃいましたら、是非書き込みお願いします。
お礼
お礼がおそくなってしまいました。 カルノスキーのことを調べてみました。生活というキーワードがここにはあると感じました。 ありがとうございました