-1

我对Prolog不太了解。我需要计算一个总和x^n/n!在 Prolog 中,n=1..k,k 和 x 整数 有人,请解释我如何使用 Prolog 来做到这一点。提前致谢!

4

1 回答 1

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).

填空。:)

这些子句是互斥的,因此谓词是确定性的。

于 2013-03-10T14:05:25.473 回答