如何将计算结果写入Prolog中的文件?

时间:2017-10-14 23:27:45

标签: file text prolog evaluation

我希望将计算结果导出到Prolog中的文本文件,尝试以下操作:

我编译了以下程序 test.pl

write_to_file(File, Text) :-
   open(File, write, Stream),
   write(Stream, Text), nl,
   close(Stream).

我执行以下操作:

Y is 2**10000.

最后:

write_to_file('test.txt',Y).

但文件test.txt的内容如下:

_306

我做错了什么?

1 个答案:

答案 0 :(得分:0)

如果要在Prolog顶级的不同调用中重用变量,则需要在该变量前加$个字符。以你的例子:

?- Y is 2**10000.
?- write_to_file('text.txt', $Y).

如果您使用Prolog连接(,)进行两次调用,则不需要这样做:

?- Y is 2**10000, write_to_file('text.txt', Y).