本文へスキップ

●長野県下伊那地方で支障木の伐採をしてます!

使い方-Javascriptで詰め将棋を解く

1手1手盤面上の駒を追加ボタンを押して入力した後、持ち駒(基本的に先手のみ)を入力して、解析開始ボタンを押すだけです。
後手の持ち駒を入力しないと、後手の持ち駒は残りの駒全部になります。
詰め将棋をやる人ならわかりますよね?私は詰め将棋をほとんどやらないのでよくわかりませんが。
重要なのは「解析手数制限」でこれをうまく調整することで待ち時間を減らすことができます。
入力を間違えたら問題表示窓はユーザによって編集可能です。ただし、先手・後手を識別する▲と△、 それと駒名を除いて、数値とコンマと空白は半角でお願いします。変な値を入力すると結果表示窓にエラーが表示されますのであしからず。
詰みが複数ある場合は全ての手順を表示します。たいへん私のような素人向きな作りです。
おそらく私の作ったプログラムがへっぽこなのに加え、Javascriptという言語のせいで処理速度が非常に遅いため、解析手数制限を9手までとしています。 (渡すパラメーターを変更すれば何手でも設定は可能ですが、結果がでるまで非常に長い待ち時間となるでしょう。)
以下に今後の検討課題を列挙します。

・後手のいわゆる無駄な合駒も1手として捉えています。(「何手詰め」と答えがある詰め将棋で答えが出ない場合は解析手数制限を答え+2手+4手で試してみて下さい。)
・解析結果については、先手の持ち駒を使い切る詰みが手前に来るとは限りません。
・後手に合駒する手があり、歩〜飛車までの後手の全ての持ち駒で王手の合駒が有効な場合、全ての詰みを表示してしまいます。

今のところ以上です。