第6講 数独作成アプリVer.1にライン排除確定を組み込む
第3話 数独作成アプリVer.1にライン排除確定をいかに組み込むか

t

さて、目標は明確になりました。
ですが、どうやって数独作成アプリVer.1に組み込むのでしょうか。
確定法数独解決ソフトVer1
の1つ前のバージョンではじめて組み込んだのですが、
このときは本当に頭が爆発しそうになりました。
最初、どのように組み込んだら良いのか皆目見当がつかなかったからです。
でも、第5講第4話全体リスト構造解析Total方式の解説その2で解説した
  For i = 0 To n_1
    For j = 0 To n_1
      If p(i, j) = 0 Then
        For k = 0 To n_1
          If p(i, k) > 0 Then
            kh(i, j, p(i, k) - 1) = 0
          End If
        Next
      End If
    Next
  Next
がヒントになりました。
最初に数独問題を解くソフトや数独問題作成ソフトを研究するときに
Total方式のリスト構造解析を選んで出発したことが幸いしたのです。
配列khの名称は、可否から取っています。
kh(i, j, k)ならば、セル(i,j)にk+1の値の入力が、
可であるか不可であるかを0と1の値によって示しています。
いつも注釈文を入れないので、
1が可で0が不可なのかその逆なのかということが分からなくなって、
バージョンによってそれぞれ違っています。
色塗りによって、
t
ライン排除決定が容易になされるのだということを発見して、
確定法数独解決ソフトVer1
等の開発に成功したのです。

ライン排除確定を成功するためには、
まず、リスト構造解析プロシージャklkを改良して、
色塗り配列khに値を入力する機能を付け加えなければなりません。
もちろん初期化によって、最初はすべてのセルの色を白にする
すなわち、knの値をすべて
(白を1と定義するなら)1にしておく作業も必要です。



第2話へ 第4話へ
004

eclipse c++ 入門
魔方陣 数独(ナンプレ)で学ぶ VBA 入門
数独(ナンプレ)のシンプルな解き方・簡単な解法の研究
vc++講義へ
excel 2013 2010 2007 vba入門へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
eclipse java 入門へ
excel 2016 vba 入門へ
小学生からエンジニアまでのRuby入門へ
本サイトトップへ