0

如何通过使用减法而不是(/)来使用两个数字之间的除法。这是我使用减法计算 mod 的代码:

predicates
    div(integer,integer,integer)
clauses
    div(X,Y,Z):-X>Y,X1=X-1,div(X1,Y,Z),!.
    div(X,Y,Z):-X<y,X=Z,!.
    div(X,Y,Z):-X=Y,Z=0,!.

我解决了

predicates

div(integer,integer,integer).

clauses
div(1,_,0):-!.
div(0,_,0):-!.
div(X,Y,M):- X1=X-Y,div(X1,Y,M1),M=M1+1.
4

0 回答 0