ошибка рекурсивного синтаксиса последовательности Фибоначчи

#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 is N-1 . В частности, в части N-1. Есть идеи?

Комментарии:

1. Это не минусы, это что-то другое. Вы откуда-то копировали вставку или используете текстовый редактор (Word?). это делает странные вещи с вашим вкладом. Если вы действительно хотите разобраться в этом, вам нужно будет просмотреть этот код в редакторе, который покажет вам, какой именно символ у вас есть. Или сделайте шестнадцатеричный дамп. Другой вариант — повторно ввести ваш код в текстовом редакторе, предназначенном для кодирования.

Ответ №1:

Мне кажется, что вы используете не минус, а один из look alikes ( ), которые появляются при использовании редакторов WYSIWYG, таких как word. Откройте документ в обычном текстовом редакторе по вашему выбору и повторно введите минусы ( - ).

Комментарии:

1. Существует также вероятность того, что OP копировал вставку из приложения или веб-сайта, который что-то делает с определенными символами. Например, когда " становятся причудливыми кавычками, например.

2. Это было оно. Я копировал из PDF-файла моего учителя. Перепечатал все, и теперь это работает. Спасибо