第19講 数独(ナンプレ)解答自動生成アプリ

第1話 数独(ナンプレ)とは?
数独(ナンプレ)とは、世界的な流行を見せている人気パズルです。
ルービックキューブ以来の大ヒットになっていまして、
世界大会が毎年開かれています。
アメリカ人建築家のハワード・ガーンスが1970年代に考案したもので、
アメリカでは「ナンバー・プレイス」として発売されていたパズルを、
日本のパズル出版社であるニコリが数独の名称で出版するようになったのです。
ナンプレとも呼ばれ、愛好者がたくさんいます。
私もその1人です。
私も数々の数独(ナンプレ)自動生成ソフトを作ってきました。
Googleにおいて「数独作成ソフト」「ナンプレ自動生成アプリ」で検索すると、
第1位に出てくるページは、本サイトのページです。
同ページは「数独自動生成」「数独自動作成」の検索では第3位になります。
同検索の第5位第6位も本サイトのページです。
数独(ナンプレ)のクォリティの高さでは、市販の数独(ナンプレ)アプリに負けないと思っています。
「数独 わかりやすい」の検索で第1位に出てくるページも本サイトのページです。
同ページは「数独 わかりやすい解き方」でも第1位です。

以下は、C言語で組んだプログラムではなく、
エクセルVBAで組んだソフトですが、
エクセルが入っていれば実行できます。
エクセルは、基本的にはWindowsマシンであれば入っています。
良問難問数独(ナンプレ)自動生成アプリVer.3(非対称形)
良問難問数独(ナンプレ)自動生成アプリVer.4(対称形)
例えば、Ver.4の方をクリックして、編集を有効にして
かつコンテンツを有効化しますと、
cvb
となります。問題作成ボタンを押して下さい。
ged
qfwrw
もちろん、皆さんのパソコンの画面に出てきた問題は、
別の問題です。
そのソフトは、毎回異なる問題を作成します。
数独(ナンプレ)のルールを説明するために、
解答の方も載せておきましょう。
qwr
(解答作成を押せば、解答が出てきます。)
問題               解答
qf qwr
数独(ナンプレ)のルールは、1から9までの数字を
@ 行(横列)に同じ数字が並ばない
A 列(縦列)に同じ数字が並ばない
B ブロックに同じ数字が入らない
の条件を満たしながら、すべて埋めることです。
興味がある方は、
是非問題をプリントアウトして挑戦して下さい。
ただし、上級クラスの問題しか作成しませんので、
やったことのない方は、解くのは難しいといっておきましょう。
どうしても解きたい方は、本サイトのページである
数独(ナンプレ)のシンプルな解き方・簡単な解法の研究
をクリックして、解き方のコツを会得してから挑戦して下さい。

良問難問数独(ナンプレ)自動生成アプリVer.3(非対称形)
良問難問数独(ナンプレ)自動生成アプリVer.4(対称形)
両アプリは
すべて、仮定法=背理法=トライアンドエラー=試行錯誤法
を一切使わないで、理詰めで解ける問題しか生成しません。
つまり、上の問題の場合81−24=57個の空欄は、
必ずどこかが理詰めで決まるようになっているのです。
本講義『小学生からエンジニアまでのc言語入門』
の究極の目標の1つは、クォリティの高い数独(ナンプレ)を自動生成するソフトの開発です。


前話で申し上げたことから予想できますように、
クリアしなければ課題がたくさんありますので、
現段階ではそのソフトを開発することは困難です。
ですが、本講義を粘り強く読み続ければ、
小学生にもクォリティの高い数独(ナンプレ)自動生成ソフトの開発ができるようになると、
断言します。
本講は、その第1歩です。
前話で申し上げた通り、
問題の自動生成ではなく、
解答の自動生成に挑戦します。

尚、現在excel 2016 vba 入門講義第4部 において、
数独(ナンプレ)自動生成アプリの開発というテーマで講義を進めていて、
第8講まで進み、残り2講で終講というところまできています。
C言語とVB(Visual Basicの略称です)やVBA(応用のためにVBを簡略にしたもの)は、
大変似ていますから、
今はじめてプログラミング言語を学ばれている方は、
excel 2016 vba 入門講義にも挑戦してください。
VBAは、ワードやエクセルなどと直結していて、
ソフト開発には、非常に手頃です。
私は、JavaよりVBAを強く推奨します。




第18講第10話へ 第2話へ

a


初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独(ナンプレ)で学ぶ VBA 入門

数独(ナンプレ)のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ