【发布时间】:2022-08-11 18:04:08
【问题描述】:
我需要在 Prolog 中编写一个谓词,给出一个列表,如果有 2 个连续的 \'/\',则返回 false,否则返回 true。 这是我到目前为止所做的,它只在某些情况下有效。据我所知,只有当列表具有偶数个元素时,它才能正确工作。
t([]) :- !.
t([X, Y | Xs]) :-
X \\= \'/\',
Y \\= \'/\',
!,
t(Xs).
t([X, Y | Xs]) :-
X \\= Y,
t(Xs).
请你帮助我好吗?
先感谢您。
-
使用 t([Y|Xs]) 代替 t(Xs)。