Prolog foreach:显示事实

Prolog foreach:显示事实,prolog,Prolog,在prolog中,我想显示如下简单事实: person(Mike, 18). person(Alice, 22). person(Louis, 34). 在这方面: ------------------ | Name | Age | ------------------ | Mike | 18 | | Alice | 22 | | Louis | 34 | ------------------ 我使用代码进行测试,但似乎不起作用: print:- for

在prolog中,我想显示如下简单事实:

person(Mike, 18).
person(Alice, 22).
person(Louis, 34).
在这方面:

------------------
| Name     | Age |
------------------
| Mike     | 18  |
| Alice    | 22  |
| Louis    | 34  |
------------------ 
我使用代码进行测试,但似乎不起作用:

print:-
 forall(person(N, A), writeln("| ", N, "     | ", A, "  |")).

您能帮助我吗?

它到底是如何工作的?以大写字母开头的标识符是变量。因此,事实上,如
person(Mike,18)。
表明任何人都是18岁(因为
Mike
是一个变量)。除了@Louger所说的,你可以引用大写的原子:
person('Mike',18)。