Ich habe dies:GNU Prolog - Multiplikationstabelle
:- dynamic(times/3).
mult :- mult([0,1,2,3,4,5,6,7,8,9]).
mult(Num) :-
append(L1,[X|R1],Num),
append(L2,[Y|R2],Num),
Prod is X*Y,
assertz(times(X,Y,Prod)),fail.
Gibt es einen besseren Weg, dies zu tun. Erstellen Sie eine Multiplikationstabelle pro Sagen mit den Zeiten (X, Y, XY) Fakten.
Während dies funktioniert, habe ich mich gefragt, ob es einen Weg gibt, es ohne das Scheitern zu tun, denn wenn ich das Scheitern nicht habe, kommt es nur wahr an? für mehr Antworten. Ich möchte nur, dass es alle Antworten durchgeht, ohne zu fragen.