我想计算一个包含指数的表达式。
但是当我尝试评估一个表达式时:
exp(-1.0e3)
我收到一条错误消息:
"floating point value too small to represent"
我该如何避免这种情况?
我只想在值太小而无法表示时得到0.0。
答案 0 :(得分:1)
您使用的是哪个版本的Tcl?你在什么平台上?它对我有用(在OSX上):
$ tclsh8.4
% expr exp(-1.0e3)
0.0
% info patchlevel
8.4.19
$ tclsh8.5
% expr exp(-1.0e3)
0.0
% info patchlevel
8.5.9
$ tclsh8.6
% expr exp(-1.0e3)
0.0
% info patchlevel
8.6.1
当我将该值放入变量并使用它时,它也可以正常工作,并且我已经检查过Tcl将其理解为(中等)大负数和一些更大的负数({{1 }})。