我是初学者并使用swi-Prolog。有人能告诉我为什么这段代码不起作用吗?
inp:- write('Enter the string'),nl,read(X),write(X).
abc:- subtract(X,['at','in','to','of'],L),write(L).
我一直收到Singleton Variable [X]错误。感谢。
答案 0 :(得分:2)
inp
谓词中的X和abc
谓词中的X - 是完全不同的变量,不以任何方式连接。
你可能想要这样的东西:
inp(X) :- write('Enter the string'),nl,read(X),write(X).
abc(X) :- subtract(X,['at','in','to','of'],L),write(L).
然后像inp(X), abc(X)
一样使用它。