我在 prolog 中有一个数据库,我想要做的就是枚举它的元素并一一打印。如何才能做到这一点?
fact(is(mike,asthmatic)).
fact(has(andy,highPressure)).
fact(is(mike,smoker)).
我写了这个,它工作正常,但它从数据库中删除了元素,所以我想在不删除的情况下访问它们。
print:-
retract(factA(P)),
write(factA(P)),nl,
fail.
print.
最佳答案
您也可以考虑使用 forall/2
谓词:
print:-
forall(fact(P), writeln(P)).
关于prolog - 如何在 prolog 中打印所有数据库事实,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8510701/