問題ファイルの作成

Logic Puzzle の問題ファイル作成と、Puzzle を解くプログラムです。
ドット絵を編集して Logic Puzzle の問題ファイルを作成します。
また作成した Logic Puzzle の難易度と別解や矛盾をチェックするために、再起処理で Puzzle を解きます。

Logic Puzzle のデータファイルを作成するプログラムは次のページから Down Load して下さい。
Game Program & Tool のダウンロード

前田稔(Maeda Minoru)の超初心者のプログラム入門

機能概要

  1. Logic Puzzle のデータファイル(*.dot) を入力して、パズルを解いて画像を表示します。
  2. 通常の処理では解く事ができない難問も、2段階までの再起処理で解くことができます。
    2段階の再起処理でも解けない場合は、Logic Puzzle の問題としては失格でしょう。
  3. 再起処理で解いた問題に対して、別解が存在するかも調べます。
  4. パズルのサイズ(高さと幅)を、設定(変更)できます。
  5. マウスのクリックでドット絵を描きます。
  6. 描いたドット絵に従って、縦と横の数字をウインドウに設定できます。
  7. パズルのIDを修正(設定)できます。
  8. 現在表示されている状態を問題ファイルとして保存できます。
  9. 作成したファイルの後部には、現在表示中の画像の状態がそのまま格納されています。
    ファイルは TEXT 形式なので、不要のときは //SAVE 以下を削除して下さい。
  10. 完成した面白い問題ファイルをメールで送信して下さい。
    いただいた問題は Down Load の中に含めたいと思っています。

プログラムの説明

  1. LZH で圧縮されたファイルをダウンロードして解凍して下さい。
    LogicDat.exe Logic Puzzle の問題作成プログラム
  2. LogicDat.exe をダブルクリックで起動すると「いちご」の問題が表示されます。
    「A」のショートカットキーを押すごとに「いちご」の画像が徐々に表われてきます。
  3. [ファイル]メニュー
    1. [ファイル入力]
      DOT ファイルを入力してパズルの初期画面を表示します。
    2. [SAVE]
      現在の状態でファイルに保存します。
      ファイルの後部には、画像の状態がそのまま格納されています。
      不要のときは //SAVE 以下を削除して下さい。
    3. [LOAD]
      SAVE で保存したファイルを入力して状態を再現します。
  4. [再起レベル]メニュー
    Level_0 ~ Level_2 の再起レベルを設定します。
    普通の問題は Level_0 で解く事ができます。
    Level_0 で解けない問題は Level_1 に、それでも解けない問題は Level_2 に設定して下さい。
    Level_2 でも解けない場合は Logic Puzzle の問題としては失格です。
  5. [思考実行]メニュー
    1. [完成確認]
      行や列に矛盾が無いか調べて、パズルの完成を確認します。
    2. [クリア]
      ドット絵のウインドウをクリアします。
    3. [行と列で思考する]
      行と列の順に思考関数を実行してパズルを解いていきます。
      「A」のショートカットキーが使えます。
    4. [Puzzle を解く]
      パズルが解けるか、それ以上進めなくなるまで思考関数を呼び続けます。
      パズルが解けないときは Level を上げて下さい。
      Level_1 以上では、途中結果を格納すると矛盾する可能性があるので、ウインドウには表示されません。
      「E」のショートカットキーが使えます。
    5. [別解を求める]
      再起で解けた問題に「別解」が存在しないかを調べます。
      Level_2 での別解チェックは非常に時間がかかります。
      別解が存在する問題のサンプルは「ドンキー.DOT」です。
  6. [設定]メニュー
    1. [サイズの変更]
      パズルのサイズ(高さと幅)を変更します。
      最大サイズは「幅=60」「高さ=40」です。
    2. [マークを数字]
      描いたドット絵に従って、縦と横の数字をウインドウに設定します。
      設定した数字で解けることを確認して下さい。
  7. [ヘルプ]メニュー
    1. [バージョン]
      プログラムのバージョンを表示します。
    2. [パズルID]
      パズルIDの表示と修正を行います。

[Previous Chapter ↑] Logic Puzzle の解法

超初心者のプログラム入門(Win32API C++)