例題(N-Queen)


この例は、N-Queen の GUI を Tcl/Tk で実装したものです。
N-Queen を解くプログラムは、KLIC側で記述されています。
盤のサイズと解の選択が GUI から行えるようになっています。

プログラム

プログラムは、sample/queen ディレクトリの下にあります。
このプログラムは、2つのファイルから構成されます。

コンパイル

このプログラムは、sample/queen のディレクトリにあります。
このプログラムを利用する前に、トップディレクトリで make を行い、 klitcld をコンパイルしておいてください。
このプログラムをコンパイルするには、このディレクトリで make すればOKです。
コンパイルが終了すると、queen という名前の実行ファイルが出来ていると思います。

実行

まず、klitcld を実行します。これは、Tcl/Tk を実行するためのプログラムです。
% ./kltcld &
のようにして、バッググラウンドで実行させるとよいでしょう。
このあと、
% ./queen
とすると、プログラムが動作します。
Tcl/Tk の GUI は、

queen

のようになります。
「Size :」と書かれたところに書かれている数字を変更し、リターンキーを押すか、隣の「Solve」ボタンを押すとKLIC側のプログラムで解を求めます。
入力できる数字は、4から8までとなっています。
右側のスライダーで表示する解を選ぶことが出来ます。
プログラムを終了するには、「Exit」と書かれたボタンを押します。

プログラムの説明

KLIC 側の主な述語は以下のとおりです。 Tcl/Tk 側の主なコマンドは以下のとおりです。