Пролог Арифметика плюс - PullRequest
2 голосов
/ 11 января 2012

Я наткнулся на довольно странную проблему (для меня).

Очень просто, я хочу сложение между 2 целыми числами. Я использую предложение плюс от swi

Теперь, когда я делаю это (я вычисляю что-то на графике)

plus(LatestTime,LengthPath,TimeArrive),

Переменная TimeArrive - это физический адрес, а не ответ. Теперь я попытался сделать другое предложение

myPlus(Var1,Var2,Result):-
    Result is Var1 + Var2.

И здесь то же самое, поэтому я начинаю верить, что с моими 2 входными переменными что-то не так

LatestTime,LengthPath

Однако, когда я «пишу» их, я получаю целое число вместо физического адреса.

Есть какие-нибудь подсказки? Потому что я вне идеи :))

1 Ответ

1 голос
/ 19 августа 2015

Используйте для выражения связей между целочисленными значениями, когда это возможно!

В общем, я думаю, что лучше использовать для всех целочисленных вычислений вместо "простой старой арифметики Пролога через (is)/2 --- не только те, которые вы считать "обратимым".

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