我想在prolog中编写一个比较两个字符串或字符串列表的程序。我想实现以下目标:
if StringList A == StringList B
{
do this
}
else
do something else
我怎样才能做到这一点?
答案 0 :(得分:3)
do this
你是什么意思?在Prolog中很难实现doing somewhat
,因为你所拥有的只是事实和谓词。
?- (string1 = string2, X=1); (string1 \= string2, X=2).
X = 2.
答案 1 :(得分:2)
以下是您如何在一行中完成的工作:
...
(A = B -> do this ; do something else)
...
答案 2 :(得分:0)
/*SWI prolog code*/
string1(progga).
string2(ikra).
go:-
write("Enter your name"),
nl,
read(X),nl,
string1(Y),
X=@=Y,nl, write("Matched");
write("not Matched"),go2.
/*Another way to*/
go2:-
string1(A),
string2(B),
A=@=B,nl, write("Matched");
write("not Matched").