詰将棋ソルバー【自動生成☆詰将棋】
2026/06/04

詰将棋(将棋のルールを利用したパズルゲーム)を解くWebアプリケーションを作りました。 自分で盤面情報を入力するか、自動生成☆詰将棋シリーズで生成された盤面URLを使用して、その解き方を確認できます。 ぜひ皆さんの棋力向上に役立ててください。

[PR]
遊んでみよう! 詰将棋ソルバー
盤面の更新方法

ゲーム画面の下部にある枠の中に盤面情報を入力し、 ゲーム画面右下の更新ボタンを押下することで、盤面に反映されます。
詳細を以下に記しますが、よろしければまず遊んでみてください!
盤面情報の書き方
盤面情報は、以下の情報を順番に並べたものです。 改行やスペースは適宜入れていただいて大丈夫です。
- 詰み手数
- 盤上の駒
- 先手の持ち駒
1.詰み手数
詰み手数は「○手詰」と記載します。
例
1手詰
一般的な詰将棋は、詰み手数が不明なことも多いですが、本記事および自動生成☆詰将棋の詰将棋ソルバーは、詰み手数が必須です。 不明なものを解きたい場合は、少なめに詰み手数を入れて、解けなければ少しずつ詰み手数を増やしてください。
2.盤上の駒
盤上の駒は、以下のように記し、並べます。
- ▲(先手)または▽(後手)
- 1~9(横位置・右端が1、左端が9)
- 一~九(縦位置・上端が一、下端が九)
- 駒種
例
▽1一玉▲1三歩
3.先手の持ち駒
先手の持ち駒は、以下のように記し、並べます。
- ▲
- 駒種
例
▲金
盤面情報
以上を繋げたものが盤面情報です。
例
1手詰▽1一玉▲1三歩▲金
反映盤面情報
盤面URLからジャンプして来た場合は、盤面情報の下に、このページに来たときに反映した最初の盤面の情報が確認できます。
SNS共有用に盤面URLおよび画像のリンクを置いていますので、必要に応じてお使いください。 ※盤面URLは【URL】ボタンを押してクリップボードにコピーされた内容と同一です
探索結果に関する注意事項
探索結果について以下の注意事項がありますのでご確認ください。
31手詰まで
本記事では、最大手数が31の詰将棋まで対応しています。
5手詰以下は全王手
5手詰以下の詰将棋では、全探索をしており、すべての王手が選択可能です。
盤面操作で実際に駒を動かしながら、詰将棋を楽しめます。
7手詰以上は詰み手順のみ
7手詰以上については、詰み手順のみ探索します。
盤面操作時に、詰む王手のみ選択可能です。 頭の中で答えを見つけてから、操作する形で楽しむことを推奨します。
13手詰以上は一部の詰み手順のみ
13手詰以上は、詰将棋エンジンが示す正解など、一部の詰み手順に絞られます。
複数の詰み手順があるときでも、盤面操作時には一部の詰み手順のみ選択可能ですので、ご了承ください。
「解けませんでした」について
13手詰以上では「解けませんでした」と表示される場合があります。これは、メモリー不足等により、使用している詰将棋エンジンが正常に動作できなかった場合に表示されます。 ページの再読み込みや、Webブラウザーの再起動をお試しください。
なお、複雑な詰将棋の場合に「詰みませんでした」になる場合や、正しい結果にならない場合もあります。 ご了承ください。
王手解除はすべて探索
後手の王手解除はすべて探索しています。
正解手順以外の手順が不明な場合等に、王手解除変更方法確認ボタンからご確認・ご活用ください。
[PR]
プログラミングブログ記事一覧
詰将棋アプリの遊び方・操作方法
本Webアプリケーション【自動生成☆詰将棋】の操作方法を説明します。
[操作方法] 駒の動かし方

動かしたい駒をクリックまたはタップし、続けて動かしたい先のマスをクリックまたはタップすることで、1手指すことができます。 それにより詰みの状態になれば、成功です。
[操作方法] 問題(詰将棋)の更新

更新ボタンをクリックまたはタップすると、詰将棋の問題が更新されます。 今の問題は消えてしまいますのでご注意ください。
[操作方法] やりなおし(進む・戻る)

戻るボタンをクリックまたはタップすると、手を戻すことができます。 進むボタンで再確認することができます。
[操作方法] 正解を見る

解ボタンをクリックまたはタップすると、正解を見ることができます。
正解に対しても、戻るボタンと進むボタンで再確認することができます。
[操作方法]問題(詰将棋)のURLをコピー

urlボタンをクリックまたはタップすると、現在表示されている問題のURLをコピーします。
コピーされたURLに移動すると、自動生成☆詰将棋シリーズの詰将棋ソルバーで、 現在の問題およびその解答を確認することができます。 繰り返しプレイしたい問題の保存や、お気に入りの詰将棋の共有にご利用ください。
手数制限について

1手詰の問題は、1手で詰ませられれば正解ですが、3手で詰ますなど、手数をオーバーすると失敗です。
3手詰の問題も、3手で詰ませられれば成功、そうでなければ失敗です。
一般的な詰将棋は、何手かかっても王手の連続で詰めば正解ですが、 本記事では指定手数以内に収める必要があります。 ご注意ください。
SOLVER
詰将棋(つめしょうぎ)とは?将棋初心者向け基本ルール
詰将棋は、将棋ルールの範囲内で、王手をかけ続けて、詰みの状態にするパズルゲームです。
将棋のルール
将棋は、先手と後手が対戦し、交互に指して(さして=自分の駒を1つ動かして)、先に相手の王将を取った方が勝ちというルールのゲームです。
駒ごとに動ける場所が決まっています。
自分の駒を動かした先に、相手の駒があれば、その駒を取ることができます。
王手(おうて)
次に相手の王将が取れる状態のことを、王手といいます。
金は矢印の方向に動けるため、この図は、王手がかかっています。
王手の解除と詰み(つみ)
王手に対しては、この図のように、逃げるか、王手をかけられている駒を取るなどして解除すれば、ゲームを続けられます。
しかし、王手を解除できなければ、その時点で終了です。 実際に王将が取られるところまでは指しません。
王手をどうやっても解除できない状態のことを、詰みといいます。
離れマスへの王手
長距離を動ける駒は、この図のように離れたところから王手をかけることができます。
合駒(あいごま)による王手の解除
長距離を動ける駒に、離れたところから王手をかけられた場合、間に駒があれば、王手を解除することができます。 このように間に駒を置くことを、合駒といいます。
後手(玉側)の持ち駒から合駒を打つことで、長距離動ける駒の、離れたマスからの王手を解除することができます。
後手の持ち駒
駒種
合計数
金
4
銀
4
桂
4
香
4
飛
2
角
2
歩
18
詰将棋では、後手は、問題に登場しない駒をすべて持ち駒として持ちます。(先手玉は除く)
将棋で使用される各駒の合計数は、この表の通りです。
合い利かず(あいきかず)とは
ところで、この図の王手に対しては、合駒の意味がありません。
このように、手数を引き伸ばすだけの駒のことを「無駄合い」、 有効な合駒が効かない詰みの状況を「合い利かず」と呼びます。
将棋のルールでは、無駄に合駒を打つこともできますが、 詰将棋では、無駄合いを打つ前の状態で詰みが確定します。 後手が無駄に手数を引き伸ばすことは、できません。
合い利かず(あいきかず)の1手詰
少し複雑なので、もう少し例を見ていきましょう。
図は、合い利かずを利用した1手詰の問題です。
この問題は、この図のように動くことで、詰みになります。
香と玉の間に3マスありますが、どこに合駒しても取られるだけの無駄合いで、合い利かずの詰みです。

ここは詰将棋の中でも複雑なところなので、本アプリケーションでは補助情報として、画面上部に「合い利かず」と表示しています。 参考にしてください。
各駒の動かし方と詰みのパターン
駒はそれぞれ、動ける場所が決まっています。
本セクションではまず、全駒共通の指し方を解説し、駒ごとの動かし方は後述します。
盤上の駒の動かし方
盤上の駒は、動ける先が空いているか、相手の駒のある場所なら、動くことができます。
もし相手の駒があれば、それを取って、自分の持ち駒にします。
持ち駒の打ち方
持ち駒は、駒の種類によらず、盤上の好きな空きマスに打つことができます。
ただし、詰将棋ではそれにより王手をかける必要がありますので、打てるマスは、そこ駒がそこにいることで王手がかかる場所に限られます。
なお、相手の駒があるマスへは打てません。 つまり持ち駒を使用して直接取ることはできません。
駒の成り方
盤上の駒を動かすときに、移動元または移動先が相手陣地に入っていると成ることができます。 盤上の、奥の3行が相手陣地、手前の3行が自分の陣地です。
成る場合は成(なり)、成らない場合は不成(ならず)といいます。 成るか成らないかは、指している手番の人が選択します。
成ることで、駒の動ける範囲が変わります。 具体的には、個別の駒の動かし方をご確認ください。
なお、玉と金は成ることができません。 また、持ち駒からいきなり成の状態で打つことはできません。
玉(ぎょく)の動かし方
玉の動ける範囲
玉は、全方向に一歩ずつ動けます。
玉は、前記の王将のことです。 人間同士の対戦では強い人が王(おう)=王将(おうしょう)、その相手が玉(ぎょく)=玉将(ぎょくしょう)を使用するという慣例はありますが、 ルール上は同じ駒です。
当ブログの「自動生成☆詰将棋」シリーズでは「玉」で統一します。
金(きん)の動かし方と詰みの例
金の動ける範囲
金は、斜め後ろ以外に一歩ずつ動けます。
頭金による詰みの例
金は、後ろに行き場の無い相手玉の正面あると、相手玉は行けるところが無いため、その金が取られても取り返せる状態にあれば、詰みになります。 これが詰将棋の基本の形で、頭金(あたまきん)と呼ばれます。
金による詰みの例
また、金は前方および横に動けるため、図のような詰みの形があります。
銀(ぎん)の動かし方と詰みの例
銀の動ける範囲
銀は、前3箇所と、斜め後ろに一歩ずつ動けます。
成銀(なりぎん)の動ける範囲
銀は成ると成銀になります。
成銀は赤字の全で表されます。動かし方は金と同じです。
銀による詰みの例
銀は前方および、すべての斜め方向に一歩ずつ動けるため、図のような詰みの形があります。
例1は成っても成らなくても詰みますが、例2は不成にしないと王手がかかりません。
桂(けい)の動かし方と詰みの例
桂は桂馬(けいま)と書くことも多いです。 自動生成☆詰将棋では桂で統一します。
桂の動ける範囲
桂は、横1マス前2マス離れたところに1歩動けます。
自分や相手の駒に遮られていても、飛び越えられます。 トリッキーな動きになります。
成桂(なりけい)の動ける範囲
桂は成ると成桂になります。
成桂は赤字の圭で表されます。動かし方は金と同じです。
桂による詰みの例
桂は、玉の動けない範囲から王手ができ、駒を飛び越えることができるため、例1のように、駒ひとつで詰ますことが可能です。 相手陣地では、成ることで、金と同様の詰み筋があります。
香(きょう)の動かし方と詰みの例
香は香車(きょうしゃ)と書くことも多いです。 自動生成☆詰将棋では香で統一します。
香の動ける範囲
香は、前方に長距離動けます。
途中に相手の駒があれば、その駒を取ることができます。 ただし動ける範囲はそこまでです。
途中に自分の駒があれば、動けるのはその手前までです。
成香(なりきょう)の動ける範囲
香は成ると成香になります。
成香は赤字の杏で表されます。動かし方は金と同じです。
香による詰みの例
香は、前方長距離を動けるため、例1のように、玉の頭から王手をすることで、相手玉は後ろに引けません。 また例2のように、遠くから成り込んで詰ますこともできます。
飛(ひ)の動かし方と詰みの例
飛は飛車(ひしゃ)と書くことも多いです。 自動生成☆詰将棋では飛で統一します。
飛は動ける範囲が広く、駒のサイズも大きいため、大駒と呼ばれます。
飛の動ける範囲
飛は、前後左右に長距離動けます。
途中に相手の駒があれば、その駒を取ることができます。 ただし動ける範囲はそこまでです。
途中に自分の駒があれば、動けるのはその手前までです。
龍(りゅう)の動ける範囲
飛は成ると龍になります。
竜や龍王(りゅうおう)・竜王などとも書きますが、本記事では龍で統一します。
駒は赤字の龍で表されます。動かし方は、飛の動きに加えて、斜めに1歩ずつ動けます。
飛による詰みの例
飛は、前後左右に長距離を動けるため、例1のように、玉の隣から王手をすることで、相手玉は離れるようには逃げられません。
また例2は、実践でも見かけます。 飛の横利きを利用して、後ろから金で王手をかけて追い込んでいき、玉が飛の方に戻ってきたところを龍に成って詰まします。 覚えておいて損の無い形です。
角(かく)の動かし方と詰みの例
角は動ける範囲が広く、駒のサイズも大きいため、大駒と呼ばれます。
角の動ける範囲
角は、斜めに長距離動けます。
途中に相手の駒があれば、その駒を取ることができます。 ただし動ける範囲はそこまでです。
途中に自分の駒があれば、動けるのはその手前までです。
馬(うま)の動ける範囲
角は成ると馬になります。
駒は赤字の馬で表されます。 動かし方は、角の動きに加えて、前後左右に1歩ずつ動けます。
角による詰みの例
角は、斜めに長距離を動けるため、例1のように、離れた場所から詰ますことができます。
また馬になると全方向に1歩は動けるため、例2のように、頭金と同等の詰ませ方が、左右を含めて盤の端にいる玉に対してできます。
歩(ふ)の動かし方と詰みの例
歩の動ける範囲
歩は、正面に1歩のみ動けます。
と金(ときん)の動ける範囲
歩は成るとと金になります。
と金は赤字の「と」で表されます。動かし方は金と同じです。
歩(と金)による詰みの例
歩は、不成でで動けなくなる範囲はありませんので、 基本的にはと金に成ることで、図のような詰みの形があります。
禁じ手:打ち歩詰め(うちふづめ)と二歩(にふ)
歩の特殊ルールとして、禁じ手が2つあります。 打ち歩詰めと二歩です。
打ち歩詰めは、持ち駒から歩を打った手で詰ますことです。 これは反則負けになります。 盤上の歩を動かす場合は、歩のまま詰ましても問題ありません。
二歩は、同じ列に歩を2枚置くことです。 こちらも反則負けになります。 と金については問題ありません。
[PR]
まとめ
本記事は、自動生成☆詰将棋Webアプリケーションの詰将棋ソルバーです。
詰将棋の問題図の盤面を自分で入力し、解き方を確認できます。 ぜひご活用ください。
自動生成された詰将棋をプレイされたい方は、 この記事などがございます。 各レベルに分けて記事を用意していますので、お好みの設定でぜひ遊んでみてください。
なお、自動生成☆詰将棋では全手順のプレイが可能で、本ページも同じ全探索アルゴリズムを採用しています。 そのため長手数はかなり時間がかかります。
そこで本記事公開後に、13手詰以上の先手番については詰将棋エンジン(KomoringHeights)の力をお借りすることにしました。 筆者の環境で、ある23手詰を解くのに10分かかっていたものが、数秒になりました。 感謝です。
詰将棋エンジンが高速な理由はバイナリ化による高速化記事内で考察を追記していますので、 併せてご覧ください。
補足
- 記事の校正/添削に生成AIの Anthropic Claude を利用しております。
- 画像内のラスタライズ文字フォントにOpen Font LicenseのZen Antiqueを使用しております。
- 画像内のラスタライズ文字フォントにOpen Font LicenseのNoto Sans Japaneseを使用しております。
- 画像内のラスタライズ文字フォントにOpen Font LicenseのLimelightを使用しております。
- ※各社の登録商標または商標について「®」「™」等の表記はしておりません。
- (本記事公開後)Webブラウザーのサイトデータに「最後に表示された問題」を保存するようにしました。
- (本記事公開後)盤面URL機能をエンコードしXに対応しました。haseraさんご指摘ありがとうございました!
- (本記事公開後)画像を変更しました。URL機能でXに貼り付けた際に指定された盤面が出るようにしました。
- (本記事公開後)SNS用画像へのリンクを追加しました。
- (本記事公開後) AIエージェント claudecode を利用して、 詰将棋エンジンKomoringHeights (ベース:YaneuraOu.wasm・ ライセンス:GPLv3) のシングルスレッド WASM ビルドを組み込み、長手数詰将棋の解析を大幅に高速化しました。 GPLv3 の条件に従い、本アプリのソースコードは js/shogi/loappTsumeShogi.mjs を起点に公開しております。 また、エンジンのビルドに用いた変更済みソースコードおよびREADME.mdを こちら(zip)で公開しております。
カテゴリー:Webアプリケーション,自動生成☆詰将棋
[PR]