如何将这个数字扩展为完整的十进制(非科学)记数法?

如何将这个数字扩展为完整的十进制(非科学)记数法?

我需要排版88.6的53次方乘以9216的结果。

我需要的是完整的数字,作为长达 6 页的方程式的一部分,该方程式表示以 4 英里/小时的速度步行到仙女座星系需要多长时间。它不应该采用科学计数法。

答案1

很遗憾,bigintcalc只允许使用整数进行计算。但在这种情况下,你知道整数部分的位数:以 10 为底的对数88.6^53 * 9216约为 107.178,因此我们可以以整数算术方式执行运算,并调整结果使整数部分有 108 位数字:

\documentclass{article}
\usepackage{xparse,l3str,bigintcalc}
\usepackage{numprint}

\npthousandsep{\hspace{.33333em plus .16667em minus .11111em}}
\npdecimalsign{.}

\ExplSyntaxOn
\NewDocumentCommand{\xnumprint}{mm}
 { % #1 = bigint expression, #2 = decimal places
  \tl_set:Nx \l_tmpa_tl { #1 }
  \tl_set:Nx \l_tmpb_tl { \str_substr:Nnn \l_tmpa_tl { #2 } { } }
  \tl_set:Nx \l_tmpa_tl { \str_substr:Nnn \l_tmpa_tl { } { #2 } }
  \use:x { \exp_not:N \numprint { \l_tmpa_tl.\l_tmpb_tl } }
 }
\ExplSyntaxOff
\begin{document}

\noindent\xnumprint{\bigintcalcMul{\bigintcalcPow{886}{53}}{9216}}{108}

\end{document}

在此处输入图片描述

答案2

方法如下:

\documentclass{article}
\usepackage{bigintcalc}
\begin{document}
\bigintcalcMul{\bigintcalcPow{86}{53}}{9216}
\end{document}

格式化它:

\documentclass{article}
\usepackage{numprint}
\npthousandsep{ }
\usepackage{bigintcalc}
\begin{document}
\numprint{\bigintcalcMul{\bigintcalcPow{86}{53}}{9216}}
\end{document}

(小数点上只有一个小错误)。

在此处输入图片描述

您可能还会发现如何排版大数字,有用。

您可能还想将其放在 parbox 中,并添加幻影字符来排列千位,

在此处输入图片描述

相关内容