我对Prolog不太了解。我需要在Prolog中计算总数 x ^ n / n!, n = 1..k,k和x整数 有人,请解释我如何使用Prolog做到这一点。提前谢谢!
答案 0 :(得分:2)
通过使用累加器参数实现具有尾递归辅助谓词的循环:
xsum(K,X,S):- K>=1, zsum(X,1,K,1,0,S).
zsum(X,I,K,PrevTerm,PrevSum,S):-
I=:=K, Term is ________ * X / I, S is _____ + _____.
zsum(X,I,K,PrevTerm,PrevSum,S):-
I < K, Term is ________ * X / I, Sum is _____ + _____, I1 is I+1,
zsum(X,I1,K,Term,Sum,S).
填空。 :)
这些子句是互斥的,因此谓词是确定性的。