我如何在prolog中制作这样的东西:
if(A > -1 && A > 0){
//DoSomething
}
else{
//DoAnotherThing
}
试过这个:
positive([], []). %Tudo Vazio
positive([H1|T1], [H2|T2]) :- H1 > -1, H1 > 0 -> H2 = H1, positivos(T1, T2).
答案 0 :(得分:0)
请注意,Prolog是一种逻辑编程语言,而不是C或类似语言。
Prolog将会成功'或者'失败'检查你扔的任何东西。 因此,如果您想检查A是否为正(我认为您想做),您可以简单地写一下:
positive(A) :- A > 0.
如果你想检查列表中的所有数字是否都是正数,那么你可以通过一个列表来检查所有上一个谓词的成员,如:
positive([]).
positive([H|T]) :-
positive(H),
positive(T).
' if / then'在Prolog中可以用;
编写,这是or
的Prolog。
positive(A) :-
(
A > 0, print('A is positive')
;
A < 0, print('A is negative')
;
A == 0, print('A is zero')
).
通过询问pr positive(1)
或positive(-1)
来测试它。