prolog中没有输出

prolog中没有输出,prolog,clpfd,cryptarithmetic-puzzle,prolog-toplevel,Prolog,Clpfd,Cryptarithmetic Puzzle,Prolog Toplevel,我不熟悉Prolog,用它来解决一个密码算术问题CROSS+ROADS=DANGER。但是当代码运行时,没有输出。有人能告诉我程序出了什么问题吗?我会非常感激的 代码: 如果您将SWI Prolog用作与swipl myScript.pl一起运行的脚本,我将使用SWI Prolog, 然后,您必须指定脚本的入口点,如下所示: :-initialization(myProgEntryPoint). % define thousand other predicates myProgEntryPo

我不熟悉Prolog,用它来解决一个密码算术问题CROSS+ROADS=DANGER。但是当代码运行时,没有输出。有人能告诉我程序出了什么问题吗?我会非常感激的

代码:


如果您将SWI Prolog用作与swipl myScript.pl一起运行的脚本,我将使用SWI Prolog

, 然后,您必须指定脚本的入口点,如下所示:

:-initialization(myProgEntryPoint).

% define thousand other predicates

myProgEntryPoint :- write("Do stuff"), halt.
重要的部分是
:-initialization(…)。
和最后的
halt
。如果要在运行脚本后进入交互式解释器,请删除
halt


顺便说一句:您应该修复缩进,否则代码很快就会变得不可读。

程序在运行时不产生任何输出的最可能原因是它没有运行

你一定要熟悉这本书


此外,有关详细信息,请参阅Prolog处理器的手册。

move labeling/2在最后……标签应在约束之后而不是之前进行。将
标记([],谜题)
作为谓词中的最后一个语句,您将得到
cru谜题(Foo)的解决方案。
:-initialization(myProgEntryPoint).

% define thousand other predicates

myProgEntryPoint :- write("Do stuff"), halt.
$ swipl --traditional
Welcome to SWI-Prolog (Multi-threaded, 64 bits, Version 7.3.4)
Copyright (c) 1990-2015 University of Amsterdam, VU Amsterdam
SWI-Prolog comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
Please visit http://www.swi-prolog.org for details.

For help, use ?- help(Topic). or ?- apropos(Word).

?- compile(cr).
true.

?- cr_puzzle(P).
P = ([9, 6, 2, 3, 3]+[6, 2, 5, 1, 3]=[1, 5, 8, 7, 4, 6]) ;
false.