我被分配了一些旧代码,当我阅读它时,我注意到它的形式如下:
float low = 1e-9;
float high = 1e9;
float lowB = 1e-9;
float highB = 1e9;
float lowL = 1e-9;
float highL = 1e9;
所以我看到它试图使用 e 表示法定义一些范围,对吗?但
1e-9
不应该是-1e9
吗?
那么这些值将在
-1000000000
和 1000000000
之间,对吧?
我不确定
1e-9
的含义是什么?
两者都不比另一个更正确。它们只是代表不同的价值观:
1e-9
是 0.000000001
;减号适用于指数。-1e9
是 -1000000000.0
;减号适用于数字
本身。e
(或E
)是所谓的指数记数法,它的意思是“乘以10的次方”,所以1e9
是“一乘十的九次方” ”,而 1e-9
的意思是“一乘十的负九力量”。
在数学科学记数法中,通常用上标表示:1 × 10-9 或 -1 × 109。编程语言采用
e
或 E
表示法,因为它比上标更容易键入和打印(就这一点而言,现在仍然如此)。我认为这可能是 Fortran 在 20 世纪 50 年代引入的,但我不确定确切的历史。
“低”和“高”是指绝对值。数字越小,绝对值越小,数字越大,绝对值越大。负数并不重要,因为您已经了解如何使用它们。浮点数最重要的是它们的变量scale(即指数),因此通常为比例提供下限和上限,而不是值。