我希望将计算结果导出到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
我做错了什么?
答案 0 :(得分:0)
如果要在Prolog顶级的不同调用中重用变量,则需要在该变量前加$
个字符。以你的例子:
?- Y is 2**10000.
?- write_to_file('text.txt', $Y).
如果您使用Prolog连接(,
)进行两次调用,则不需要这样做:
?- Y is 2**10000, write_to_file('text.txt', Y).