solve の最後で return solve(i+1) してるけど、現在の solve の機能は
「ビットパターン I の 1 のビットを全てタッチした時の盤面を ARY0 に返す」
となっていますよね。コメントアウトされてるけど、完成かどうかの判定もしている。ので
return sum == a*a
とすれば、I を与えたとき、完成するかどうかを返す(非再帰の)判定関数になります。
そこで単純な全数検査ソルバーは
for i = 0 to a*a-1
if solve(i) then ? bin$(i)
next
で完成です。? bin$(i)の代わりに、i を a*a のマトリクス文字列にする p(i) という関数があると ? p(i) ですっきり。
0そうだね プレイ済み