Wolfram mathematica Mathematica:使用指定精度的电子符号打印近似数字

Wolfram mathematica Mathematica:使用指定精度的电子符号打印近似数字,wolfram-mathematica,Wolfram Mathematica,在Mathematica中,使用电子符号以指定精度打印给定近似数字的最简单方法是什么?例如: a=1.23456789 10^-23 如何将a打印为3位有效数字以获得: 1.23E-23 请注意,尝试使用N[]的FortranForm[]不起作用,因为N[]不会截断一个近似数字。经过一番尝试后,我找到了一个答案: 数字形式[a,{5,3}, NumberFormat->(SequenceForm[#1,“E”,“#3]&), 指数函数->(#&)] 如果您想使其更加健壮,并且能够处理有理数,请将

在Mathematica中,使用电子符号以指定精度打印给定近似数字的最简单方法是什么?例如:

a=1.23456789 10^-23

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

1.23E-23


请注意,尝试使用N[]的FortranForm[]不起作用,因为N[]不会截断一个近似数字。

经过一番尝试后,我找到了一个答案:

数字形式[a,{5,3}, NumberFormat->(SequenceForm[#1,“E”,“#3]&), 指数函数->(#&)]

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

请注意,需要使用指数函数,因为像1.2345这样的数字将被输出为1.23E

,您可以使用该选项

然后

可以使用
NumberFormat
选项进一步格式化输出,使其符合您的规范

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

希望这有帮助。

这不适用于1.2345这样的数字。请参阅我的答案,以找到解决此问题的方法。
ScientificForm[a, 3]
1.23*10^(-23)
ScientificForm[a, 3, NumberFormat -> (Row[{#1, "E", #3}] &)]
1.23E-23