我正在为我的prolog程序整理这条规则,在调用时应该列出每个可以包含的浇头数量。它不能低于或高于40
pizza(P, S, B, O, M) :-
member(P, [0,1,2,3,4,5,6,7,8,9,10]),
member(S, [0,1,2,3,4]),
member(B, [0,1,2,3,4,5,6]),
member(O, [0,1,2,3,4,5,6,7,8]),
member(M, [0,1,2,3,4,5]),
X is 4*P + 10*s + 6*B + 5*O + 7*M,
X =< 40,
Y is 40-X.
它继续产生此错误。
错误:是/ 2:算术:`s / 0&#39;不是一个功能
当我尝试使用函数pizza(1, S, 1, O, M).
答案 0 :(得分:1)
我想那个
X is 4*P + 10*s + 6*B + 5*O + 7*M,
应该写成
X is 4*P + 10*S + 6*B + 5*O + 7*M,
我的意思是:大写S
而不是小写s
。