在下面的代码中,我正在尝试搜索列表并在列表中有匹配项时打印“匹配”,如果没有匹配项则打印“不匹配”。如果有匹配项,我的代码会打印“匹配”,但是如果没有匹配项,则不打印“不匹配”而是返回 false。如果列表中没有匹配项,如何更改我的代码以打印“不匹配”?谢谢
on(Item,[Item|_], X) :- X is 1.
on(Item,[_|Tail],X):- on(Item,Tail,X).
check(X,Y) :- on(X,Y,Z), (Z == 1, write('match');write('no match')).