Can't understand Prolog line of code

强颜欢笑 提交于 2020-01-24 21:40:29

问题


I am studying for a logic test and I saw an example of Perfect number problem There is many solutions to this however there is one that I am unsure how they have done it.

divisors(Number, D, L1, L2) :-
   X is Number / D,
   ( D < X -> D1 is D + 1, divsors(Number, D1, L1, L2) ; L1 = L2).
divisors(Number, D, L1, L2) :-
   0 is Number mod D, D1 is D + 1, X is Number / D,
   ( D =< X -> divisors(Number, D1, [X, D |L1], L2) ; L1 = L2).

来源:https://stackoverflow.com/questions/47744880/cant-understand-prolog-line-of-code

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!