Prolog 斐波那契序列递归语法错误

Prolog 斐波那契序列递归语法错误,prolog,Prolog,我试过这个密码 fibonacci(1, 1). fibonacci(2, 1). fibonacci(N, F):- N1 is N–1, N2 is N – 2, fibonacci(N1, F1), fibonacci(N2, F2), F is F1 + F2. 但它告诉我,在这里有一个语法错误 N1是N-1。特别是在N-1部分。有什么想法吗?对我来说,看起来你不是在使用减号,而是使用所见即所得编辑器(如word)显示的一个类似的外观(–)。在您

我试过这个密码

fibonacci(1, 1).
fibonacci(2, 1).
fibonacci(N, F):-
    N1 is N–1,
    N2 is N – 2,
    fibonacci(N1, F1),
    fibonacci(N2, F2),
    F is F1 + F2.
但它告诉我,在这里有一个语法错误
N1是N-1
。特别是在N-1部分。有什么想法吗?

对我来说,看起来你不是在使用减号,而是使用所见即所得编辑器(如word)显示的一个类似的外观(
)。在您选择的普通文本编辑器中打开文档,然后重新键入负号(
-
)。

这些不是负号,而是其他内容。你是从某处复制粘贴,或者你正在使用一个文本编辑器(Word?),它会对你的输入做一些奇怪的事情。如果你真的想弄清它的底细,你必须在一个编辑器中查看这段代码,它会告诉你你到底有什么角色。或者做一个垃圾桶。另一种选择是在文本编辑器中重新键入代码,用于编码。OP也可能是从应用程序或网站复制粘贴的,该应用程序或网站使用某些字符。比如,当
变成花哨的引号时。就是这样。我从老师的pdf中复制。重新键入所有内容,现在就可以了。谢谢