我对 prolog 还很陌生,并且是为家庭作业修改的代码。但是我坚持输入刺痛。我知道在 prolgo 中输入的字符串是 ascii 代码列表。即,“abc”= [97, 98, 99]
这是给定的代码
accept(W) :- start(S), path(S, W).
path(S, []) :- final(S).
path(S, [H|T]) :- arc(S, H, N), path(N, T).
start(1).
final(3).
arc(1, a, 1).
arc(1, b, 2).
arc(2, a, 2).
arc(2, b, 3).
arc(3, a, 3).
这是一个不确定的机器,知道如何实现字符串,我假设将 arc() 事实更改为类似
arc(1, 97, 1).
arc(1, 98, 2).
arc(2, 97, 2).
arc(2, 98, 3).
arc(3, 97, 3).
将使我能够输入a和b的字符串,但这不起作用,谁能帮助我如何做到这一点?谢谢