在Mathematica中,最简单的方法是使用E标记以指定的精度打印给定的近似数字?例如:
a = 1.23456789 10 ^ -23
如何 a 打印到3位有效数字以获得:
1.23E-23
请注意,使用N []尝试使用FortranForm []无效,因为N []不会截断近似数字。
答案 0 :(得分:0)
经过一番游戏后,我找到了答案:
NumberForm [a,{5,3}, NumberFormat->(SequenceForm [#1,“ E”,#3]和), ExponentFunction->(#&)]
如果您想使其更健壮并能够处理有理数,请将 a 替换为 N [a,3] 。
请注意,需要 ExponentFunction ,因为像1.2345这样的数字将作为 1.23E 输出。
答案 1 :(得分:0)
您可以将ScientificForm
与NumberFormat
选项一起使用。
使用
a = 1.23456789 10^-23;
然后
ScientificForm[a, 3]
1.23*10^(-23)
可以使用NumberFormat
选项将输出进一步格式化为您指定的格式。
ScientificForm[a, 3, NumberFormat -> (Row[{#1, "E", #3}] &)]
1.23E-23
希望这会有所帮助。