我想使用Prolog程序查找一系列的总和。为此,我写了下面的程序:Prolog中一系列的总和
pow(N,1,R):- R is N.
pow(N,M,R):- X is M-1,pow(N,X,R1),R is R1*N.
sum(N,1,R) :- R is N+1 .
sum(N,M,R) :- X is M-1, X>1,sum(N,X,R1),pow(N,M,R2), R is (R1+R2).
我想找到以下系列的总和:
1+n+n^2+n^3+..................+n^m
我认为这是上面的代码是正确的。但是当我运行该程序时,它显示输出“否”。为什么?我尝试了很多,但无法获得预期的输出。
你能分享你如何调用总和谓词? – 2013-03-15 23:00:07
我用sum(2,7,R)调用sum谓词。答案应该是255,但令人惊讶的是输出是“否”。 – 2013-03-15 23:03:00