どこでも楽しめるゲーム
「数独」「Number Place」は子供から大人、日本でも海外でも人気があるパズルで、僕もはまってました。
仕事の合間に、出張の移動時間や待ち時間によく遊んでいます。
ペンを横にしたり縦にしたり、候補の数字を書き入れたり消したりとアナログな感じで解いていくのも面白いんですが、何か手ごろなツールはないかなと思って探したんですが、問題をセットできなかったり、自動で解いてしまうすごいものもあったのですが、マニュアルを残しながら頭も使うものは見つかりませんでした。
それでExcelのマクロを使った解法ツールを作ってみました。
このツールも基本的な解き方はマニュアルで解く方式と同じなんですが、手記入では複雑になってくると、ミスが出てきて最後の方で間違いに気づき、また最初からなんてことがあったので、EXCELを使ってツールを作ることにしたわけです。
数独解法ツールのご紹介
こんなツールは不要だよという方はスルーしてください。(笑)
EXCEL(Windows版)を持っていない方も使えないのでご承知おきを・・・・・
では、使い方の紹介を・・・・・
以下の図中の赤丸や赤線は説明用のもので、実際には表示されません。
外観
外観は下の通りです。
数独枠の下と右の各行、各列から使われた数字が消えていきますので入力可能な数字がわかります。
右端の9マスは数独枠の9マスの合計値が表示されます。最終確認の際全てが45になれば完了です。
問題の数字をセット
最初に、問題の数字を入れます。
「SET」ボタンを押します。問題の数字が太字になります。
数字を入れてボタンを押していくだけ
まず「1」のボタンを押します。すると「1」が入力できる場所以外が薄緑で塗りつぶしされます。
この問題では、赤丸の部分に「1」が入れられることがわかります。
赤丸部分に「1」を入力し、再度「1」ボタンを押します。
すると、先ほどの「1」を反映した新たな入力箇所が表示されます。
中央の9マスの中では「1」は一番上の行にしか入れることができませんので、右側の9マスの1は右端の2行目にしか入れることができないことがわかります。
赤丸の部分に「1」を入力し、「1」ボタンを押します。
残りの「1」は確定できないので、今度は「2」のボタンを押します。
すると赤丸の部分は「2」が簡単に確定できます。
以降、上記の流れをそれぞれの数字について繰り返します。
数字を埋めていくと、下図のように各行、各列、9マス単位で合計を見ることができ、入力が完了した9マスはオレンジ色に塗りつぶされます。また各行、各列の欄外に表示されている数字は、入力可能の数字です。
エラー処理
エラー処理として、同一行、同一列に同じ数字を入力すると、候補数字が赤く表示されます。
これで完了!
完了です。今回のサンプルでは3分くらいで解くことができます。
問題によってはこのツールを使っても推理が必要なケース、何か番号を入れて進めてみるケースなどがあります。その点は総当たり自動解法ツール等とは違いますのでご承知おきください。
いかがでしたか? この解法ツールは下記からダウンロードできますので、ご自由にどうぞ。(ウィルスチェック済みです)
但しこの解法ツールのご利用によるいかなる損害につきましては免責とさせていただきます。
また感想などコメントでいただけると嬉しいです。
では皆様も数独で楽しく遊んでください。
コメント
とても助かりました。ありがとうございました。
やまちゃんさん、コメントありがとうございました。
お役に立ててなによりです (^^)
こんちは、ネット検索をしてこちらのHPを
訪問させて戴いております。
昨今のナンプレはルールが独自化してきて
おりまして、添付URL
https://imgur.com/vdcgdAz.png
のような感じで(ご説明の為に9ブロック
に分けますと)、上段中央には6が2つ、上段
右側には3が2つ、中段左側には2が2つと、
灰色の部分の9マスには数字が重複しても良い
(そのかわり入らない数字も存在する)、白色
の部分の9マスは通常ルール、縦・横も通常
ルールという具合のものがあり、こちらの
HPのExcelをDLさせて頂いて、マクロを少し
改良?しようとしておりましたが、そのマクロ
が、マイクロソフトの陰謀で消されてしまい
ます。(通常ルールの問題も解けません)
何か、良い方法御座いませんでしょうか。
かづの様
DLありがとうございました。
マクロはセキュリティの警告が出た際に「コンテンツの有効化」をすることで使用可能になると思います。
または保存先をトラストセンターで設定することで稼働可能かと思います。
改良につきましてはマクロ(VBA)に保護をかけているため申し訳ありませんが、不可能となっております。
写真のナンプレは初めて見ました。こんなのがあるんですね。
このタイプには残念ながら当方のEXCELは対応しておりません。
最近私はKiller Sudokuにハマってます (^^)