所以我正在编写一个聊天Bot,我需要继续接受用户的输入,只要他们不输入'quit。',但如果他们这样做,我必须对用户提出的要求进行一定的回顾。然后返回true,我在使用谓词时遇到问题,该谓词将一直读取输入,直到输入quit,有人可以帮助我吗? 感谢
答案 0 :(得分:0)
问题的措辞相当普遍,所以这里有一个关于如何使它在Prolog半伪代码中工作的描述:
user_input :-
repeat,
read_a_line(Line),
( Line = quit % You might have another way to check this depending...
-> write('Finished'), nl,
!, true
; do_something_with(Line),
fail
).
repeat-fail
循环的工作方式是您希望无法继续循环。然后,为了退出循环,你想要成功切割。