Numberplace

Numberplace(数独)ゲームプログラムです。

下記のリンクからC#/C# Game Program にプログラムの作成方法を掲載しています。
前田稔の超初心者のプログラム入門

Numberplace の説明

  1. 超難解レベルを除いて解けるようになったので、ダウンロードから提供します。
    zip で圧縮されたファイルをダウンロードして解凍して下さい。
    Numberplace のフォルダーを作成して、全てのファイルを格納して下さい。
    このファイルと Number.exe と数枚の画像ファイルと数枚の *.num データが格納されています。
    データファイルは レッツ!ナンプレ に掲載されていたものです。
  2. ナンプレ(数独)は、9×9の81マスのプレートがあり、プレートは更に3×3の9マスの小プレートに分かれています。
    全ての縦・横・小プレートに1~9が一つずつ入るように、数字を入力するゲームです。
    ネットで検索すれば沢山ヒットするので、ゲームの詳細はそちらを参照して下さい。
  3. Number.exe をダブルクリックするとゲームが始まります。
    起動すると初心者レベルの盤面が表示されます。
    画面下部の1~9の数字を選択して、盤面をクリックすると数字が置かれます。
    数字が置かれているときにクリックすると削除されます。
    初心者レベルの問題を解いてみて下さい。
  4. メニューの操作です。
    File メニュー
    NewGame メニュー
    Tool メニュー
    Hint メニュー
    TestMode メニュー
    Help メニュー

  1. TestMode の使い方が解り難いと思うので、具体的に例を挙げて説明します。
    File メニュー/Load から N08.num をロードして下さい。
    N08 の問題画面が表示されます。
    Hint メニュー/Think を実行して下さい。
    簡単な問題なら解けるのですが N08 は難問でチェーンを使って解析します。
  2. 9-5 に設定されている数字の候補 2,9 から 9 を消すことが出来ることをチェーンを使って調べます。
    TestMode メニュー/Chenge でテストモードに切り替えます。
    TestMode メニュー/Terget から 9-5 のセルを選択します。
  3. 9-5 から連鎖する9に関連するマスは次の通りです。
    5-5, 6-5, 9-4, 9-7, 9-9, 7-4
    この中から最も有力なマスは 5-5 と 9-7 です。

  4. 9-7 から9を消し、Chain を実行すると 9-5 の 9 が消えます。
    9 が消えると、9のチェーンが成立します。
    また Chain の実行結果として空のマスが表示されたら失敗です。
  5. チェーンが成立すると TestMode メニュー/Chenge で元の画面に戻ります。
    9-5 から9を消し、2が確定します。
    2の確定により 9-1.3 7-1.2 4-5.7 6-5.6 5-5.9 が確定します。
  6. Hint メニュー/Think を実行するとパズルが完成します。
  7. この手順中 9-7 から9を消すと 9-5 から9が消えるのがミソですが、次のように連鎖されます。
    9-7 の9が消えると 6-7 の9確定する。(7列で9はここだけ)
    6-7 の9が確定すると 5-9 の2が確定する。(29 から9が消えた)
    5-9 の2が確定すると 5-5 の9が確定する。(5行で9はここだけ)
    5-5 の9が確定すると 9-5 の9が消える。
    このパズルの最大の関門は、このような連鎖を見つけ出すことにあります。

  1. このパズルの最大の関門は、数字の連鎖を見つけ出すことにあります。
    ところが、プレイヤーが数字の連鎖(チェーン)を探し出すのは非常に困難です。
    そこで Search メニューを使ってパズルを解く方法を説明します。
  2. 先に説明した N08.num を例に使い方を説明します。
    File メニュー/Load から N08.num をロードして下さい。
    Hint メニュー/Think を実行して、ヒントを整理して絞り込んで下さい。
    色は着いていませんが、先の画面と同じ局面になります。
  3. Search メニューを実行すると「チェーンが成立」が表示されて、マス(1-8)の1が赤で表示されます。
    ヒントが赤の数字は、これを消すことが出来ることを意味します。
    赤の1(一番上の行の右から二番目)を右クリックして消して下さい。
  4. 1が消えると、マス(1-8)の7とマス(1-4)の6とマス(2-4)の7が確定します。
    数字の確定に従って、ヒントを整理して下さい。
    1行から6と7を消します。
    8列と右上のグループから7のヒントを消します。
    4列と上中のグループから6と7のヒントを消します。(今回は該当するヒントが無い)
    ヒントの消し忘れなどがあると、誤った結果になる場合があります。
  5. 続いて Search メニューを実行するとマス(5-9)9が赤で表示されます。
    赤の9を右クリックして消して下さい。
  6. マス(5-9)の2とマス(5-3)の6とマス(5-5)9が確定します。
  7. マスが大分埋まったので RunHint メニューを実行するとゲームが完成します。
    沢山のマスが開いているゲームでは、Search メニューを繰り返して徐々にマスを埋めて下さい。
    N09.num や N10.num を解いてみて下さい。
    難問なので Search メニューを繰り返し使います。
    超難問を除いて自力でナンプレの問題を解けるようになりました。
  8. Search メニューでは、解答が複数存在する場合「チェーンがみつかりません」が表示されることがあります。
    Super メニューを使えば、再帰関数を使ってほとんどの問題を解くことが出来るのですが、解答が得られるだけで面白味がありません。

Down Load

Numberplace の Down Load

提供するするファイルは ZIP で圧縮されています。
解凍して適当なフォルダーまたはデスクトップに置いて使用して下さい。