我正在尝试写一个'recives'列表的hasRepetition,当且仅当它有重复时才返回true。
我写道:hasRepetition([Head | Tail]): - 成员(Head,Tail); hasRepetition(Tail)。
7? - hasRepetition([1,1])。 错误:toplevel:未定义的过程:hasRepetition / 1(DWIM无法纠正目标)
答案 0 :(得分:3)
您的程序定义没问题。
我想您忘了查询您的代码,例如consult(name).
其中name是包含您代码的文件的名称。
答案 1 :(得分:1)
我认为@gusbro已经给你答案了(+1)。但请注意,您编写的程序“非常低效。”
首先,应该使用memberchk / 2而不是member。然后,在分离之前进行切割。否则,如果调用回溯(例如,在findall中......)
,则代码将非常慢