добавление элементов в пролог - PullRequest
2 голосов
/ 26 декабря 2011

Я пишу код пролога, и в середине я хочу добавить 2 переменные и сохранить их в одной из них Я хочу написать что-то вроде этого

N is N+R.

но он не примет это может кто-нибудь сказать мне, почему и каков правильный синтаксис Спасибо

1 Ответ

2 голосов
/ 27 декабря 2011

Нет правильного синтаксиса. N не может быть равно N + R (если только R не равно 0, в этом случае N будет N + R независимо от значения N). Вы не можете обновить значение переменной до чего-то нового так, как вы намереваетесь. Пролог так не работает.

В Прологе отсутствует концепция переменной, имеющей одно значение в один момент времени, а затем имеющей другое значение после выполнения данного оператора. Все, что вы можете сделать с переменной, это ограничить ее возможные значения.

Очевидно, я не знаю общую картину того, что вы пытаетесь сделать здесь, но, возможно, вы можете достичь того, что вы хотите, рекурсивно вызывая свой предикат с NPR, являющимся новым значением N (где NPR is N + R ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...