使用prolog中的后继表示来计算两个数的商和余数

时间:2017-03-11 01:31:32

标签: prolog successor-arithmetics

这就是我使用谓词,plus和greater_than。但是,我想使用谓词,时间和加号来实现它。

plus(0, N, N).
plus(s(M), N, s(P)) :-
   plus(M, N, P).

greater_than(X, Y) :-
   plus(Y, Z, X),
   Z \= 0.

qr(A, B, 0, A) :-
   greater_than(B, A).
qr(A, B, Q, R) :-
   plus(C, B, A), 
   qr(C, B, T, R),
   plus(s(0), T, Q).

PS:

times(O,X,O).
times(s(X),Y,Z) :-
   times(X,Y,XY),
   plus(XY,Y,Z).

0 个答案:

没有答案