先週に引き続き、紙の上に何が何個のその2。コードを直して条件の数が不定個の場合も解けるようにしてみた。
testのところでは、候補を出して、チェックしてOKだったら、表示するということをやっている。
checkall(L):-ch
checkall2(L,[])
checkall2(L,[H1
gethead([H|L],H
kouhoall([]).
kouhoall([H|L])
printall([]):-p
printall([H|L])
kouho(0).
kouho(1).
kouho(2).
kouho(3).
kouho(4).
kouho(5).
kouho(6).
kouho(7).
kouho(8).
kouho(9).
count(X,L,C):-c
csub(_,[],C,C).
csub(X,[H|L],N,
前回の問題も、
No
2 ?-
と答えが1個出た。
リストの中に問題をそのまま入れていくカタチ。[A,B,C,D,E,F,・・・]であれば、数字AがB個、数字CがD個、数字EがF個、・・・という意味。
答えが複数あるときは、全部表示される。
No
3 ?-
今回作ったプログラムで言えば test([1,2,A,B,C
/////
例えば「1以外の数字を使って」というような場合にの対応できて、そのときは kouho(1).を削除すればよい。