\power{n}{k} nk 的幂,但不使用 \multiply

\power{n}{k} nk 的幂,但不使用 \multiply

如何使用 TeX 中的宏来实现这一点。类似于\power{n}{k}- n 的幂到值 k - 但不使用\multiply

需要做这样的事情

k_{n+1} = n^2 + k_n^2 - k_{n-1}

答案1

假设你想使用整数,并且 e-TeX 可用,那么

\documentclass{article}
\newcommand*{\power}[2]{%
  \the\numexpr\poweraux{#1}{#2}\relax
}
\newcommand*{\poweraux}[2]{%
  \ifnum\numexpr#2 = 0 %
    \expandafter\powerend
  \else
    #1 * \expandafter\poweraux
  \fi
  {#1}{#2 - 1}%
}
\newcommand*{\powerend}[2]{1}
\begin{document}
\power{2}{3}
\end{document}

看起来差不多。我没有测试过极端情况,也没有将其设为“最大效率”,因为我不完全确定需要什么。

答案2

使用fp包裹(或pgfmathpgf)进行浮点计算,而无需手动指定\multiply\divide等。这是一个小例子:

在此处输入图片描述

\documentclass{article}
\usepackage[nomessages]{fp}% http://ctan.org/pkg/fp
\begin{document}
\FPeval\result{round(3^4:0)}%
$3^4=​​​​​​​​​​​​​​​​​​​​​​​​​​​\result$
\end{document}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

查看fp自述了解有关符号和用法的更多信息。

相关内容