1
我試圖想創造一個淺謂語每個號碼說方方列表中的 例如每個號碼:淺謂語方列表
e.g. ?-square([a,[[3]],b,4,c(5),8],X).
X=[a,[[3]],b,16,c(5),64]
我試圖想創造一個淺謂語每個號碼說方方列表中的 例如每個號碼:淺謂語方列表
e.g. ?-square([a,[[3]],b,4,c(5),8],X).
X=[a,[[3]],b,16,c(5),64]
微不足道。
sq(X) :-
number(X) -> X2 is X*X ; X2 = X.
square(List, Squared) :-
maplist(sq, List, Squared).
但是請注意,square([X], X2), X=2
將不會產生預期的效果。
你可以引導我而不使用地圖列表 – iDev
@iDev:爲什麼,它不工作? –
我想做它遞歸沒有使用地圖列表 – iDev