Lisp 将科学记数法输出为十进制记数法

Lisp 将科学记数法输出为十进制记数法,lisp,number-formatting,Lisp,Number Formatting,我用它来运行一个基本的阶乘函数 它以科学记数法输出结果,但我希望看到完整的“扩展”数字 然后 我尝试过各种format命令,(format t“~D”(factorial 100))看起来是赢家,但它不起作用。还尝试设置(setq*READ-DEFAULT-FLOAT-FORMAT*'双浮点),但仍然不起作用 是我的命令出了问题,还是环境出了问题?结果是不同的环境会起作用 我使用了Gnu公共Lisp(http://www.cs.utexas.edu/~novak/gclwin.html),答案将

我用它来运行一个基本的阶乘函数

它以科学记数法输出结果,但我希望看到完整的“扩展”数字

然后

我尝试过各种
format
命令,
(format t“~D”(factorial 100))
看起来是赢家,但它不起作用。还尝试设置
(setq*READ-DEFAULT-FLOAT-FORMAT*'双浮点)
,但仍然不起作用


是我的命令出了问题,还是环境出了问题?

结果是不同的环境会起作用


我使用了Gnu公共Lisp(http://www.cs.utexas.edu/~novak/gclwin.html),答案将按预期返回。

如果您的实现支持(格式),那么我认为~F会起到作用。 鸡只计划:

#;1> (use format)
; loading /usr/local/lib/chicken/6/format.import.so ...
; loading /usr/local/lib/chicken/6/chicken.import.so ...
; loading /usr/local/lib/chicken/6/srfi-13.import.so ...
; loading /usr/local/lib/chicken/6/data-structures.import.so ...
; loading /usr/local/lib/chicken/6/ports.import.so ...
; loading /usr/local/lib/chicken/6/extras.import.so ...
; loading /usr/local/lib/chicken/6/format.so ...
#;2> (format #t "~F~%" (factorial 100))
93326215443944100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0
#t
查看


干杯。

谁知道这是一种什么样的Lisp以及实现提供了什么?如果你感兴趣,为什么不问问作者呢?我才刚开始,所以我还不确定我有多“感兴趣”:)我主要想知道如何让它工作,这样我就有了一个可靠的起点。从你的评论来看,改变环境似乎会有所帮助?如果你想学习Lisp,我建议使用Lisp实现并提供一些文档。使用像Common Lisp或Scheme这样的方言也会有所帮助。@wxvw-ahh,这就是我一直在寻找的解决方案。如果发布,将接受作为解决方案。链接
http://www.solve-et-coagula.com/As3Lisp.html
已关闭(404)。我很想看看它指的是什么。在这篇文章发表之前,我还没听说过GCL。维基百科说GCL还没有完全符合CL规范。我不知道维基百科上的这句话有多少价值。。。但是,如果要在计算机上安装CL环境,还有其他完全兼容的替代方案:首先是Clozure Common Lisp(CCL)、Steel Bank Common Lisp(SBCL)、CMUCL。
(factorial 100)

9.33262154439441e+157
#;1> (use format)
; loading /usr/local/lib/chicken/6/format.import.so ...
; loading /usr/local/lib/chicken/6/chicken.import.so ...
; loading /usr/local/lib/chicken/6/srfi-13.import.so ...
; loading /usr/local/lib/chicken/6/data-structures.import.so ...
; loading /usr/local/lib/chicken/6/ports.import.so ...
; loading /usr/local/lib/chicken/6/extras.import.so ...
; loading /usr/local/lib/chicken/6/format.so ...
#;2> (format #t "~F~%" (factorial 100))
93326215443944100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0
#t