0

我想计算一个包括指数的表达式。

但是当我尝试评估如下表达式时: exp(-1.0e3)

我收到一条错误消息: "floating point value too small to represent"

我怎样才能避免这种情况?

当值太小而无法表示时,我只想得到 0.0。

4

1 回答 1

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 是否将其理解为(中等)大的负数和一些更大的负数(-1e100)。

于 2013-09-27T11:24:08.967 回答