Mathematica:使用E标记以指定的精度打印近似数字

时间:2018-08-01 04:59:55

标签: wolfram-mathematica

在Mathematica中,最简单的方法是使用E标记以指定的精度打印给定的近似数字?例如:

  

a = 1.23456789 10 ^ -23

如何 a 打印到3位有效数字以获得:

  

1.23E-23

请注意,使用N []尝试使用FortranForm []无效,因为N []不会截断近似数字。

2 个答案:

答案 0 :(得分:0)

经过一番游戏后,我找到了答案:

  

NumberForm [a,{5,3},    NumberFormat->(SequenceForm [#1,“ E”,#3]和),    ExponentFunction->(#&)]

如果您想使其更健壮并能够处理有理数,请将 a 替换为 N [a,3]

请注意,需要 ExponentFunction ,因为像1.2345这样的数字将作为 1.23E 输出。

答案 1 :(得分:0)

您可以将ScientificFormNumberFormat选项一起使用。

使用

a = 1.23456789 10^-23;

然后

ScientificForm[a, 3]
1.23*10^(-23)

可以使用NumberFormat选项将输出进一步格式化为您指定的格式。

ScientificForm[a, 3, NumberFormat -> (Row[{#1, "E", #3}] &)]
1.23E-23

希望这会有所帮助。