Prolog 没有显示完整的答案列表
Prolog not showing full list of answer
当我 运行 查询 human(Who).
下面的 .pl
文件时
human(ann).
human(george).
human(mike).
我才回来Who = ann .
而不是
Who = ann ;
Who = george ;
Who = mike.
我正在使用序言 6.6.6。如何让它显示完整列表?
您看到的是序言的默认行为。
查询
?- findall(Object,Goal,List).
应该适合你。
例如。
findall(X, human(X), L).
它将用所有可能的答案填充列表。
您得到的答案如下。你注意到点前的 space 了吗?
Who = ann .
^ SPACE!!!
此space 表示:查询已中止。也许你输入了 return。或者,也许您的终端配置不当。
为了更好地检查这一点,请尝试:
?- X = 1 ; X = 2 ; X = 3.
你也应该得到所有三个答案。如果不是,那肯定是你的终端
当我 运行 查询 human(Who).
下面的 .pl
文件时
human(ann).
human(george).
human(mike).
我才回来Who = ann .
而不是
Who = ann ;
Who = george ;
Who = mike.
我正在使用序言 6.6.6。如何让它显示完整列表?
您看到的是序言的默认行为。
查询
?- findall(Object,Goal,List).
应该适合你。
例如。
findall(X, human(X), L).
它将用所有可能的答案填充列表。
您得到的答案如下。你注意到点前的 space 了吗?
Who = ann .
^ SPACE!!!
此space 表示:查询已中止。也许你输入了 return。或者,也许您的终端配置不当。
为了更好地检查这一点,请尝试:
?- X = 1 ; X = 2 ; X = 3.
你也应该得到所有三个答案。如果不是,那肯定是你的终端