序言输出不放“。”

问题描述 投票:0回答:1

我有一个序言程序,其中包含一些谓词,当我查询其中一个谓词时,它会显示真实输出,但不会放置“。”最后转到下一个查询。 ChatGPT 甚至无法理解这个问题,我想不出有什么可做的 可能是什么问题? (我无法分享我的代码) 谓词在里面调用一个递归谓词,结果正确 我明白

1 ?- predicate(1,2,A,B).
A=1,
B=2  

代替

1 ?- predicate(1,2,A,B).
A=1,
B=2.

2 ?-
prolog predicate prolog-toplevel
1个回答
0
投票

顶层不打印点

.
,因为还剩下一些选择点,在回溯时会尝试找到另一个解决方案。

<enter>
;
让 prolog 引擎尝试寻找另一个解决方案,或按
<esc>
.
取消进一步搜索其他解决方案。

如果您想在搜索第一个解决方案后自动停止,请将查询包装在

once
目标上,如下所示:

?- once(predicate(1,2,A,B)).
A = 1,
B = 2.
© www.soinside.com 2019 - 2024. All rights reserved.