顯示新增結果

顯示新增結果

我正在使用一個 for 循環來啟動變數 \n。如何列印(\n+2)的結果?我讀過 e-Tex 和 LuaTex,但這對於這個簡單的操作來說似乎太過分了?

已經謝謝了!

答案1

一個非常簡單的版本:使用\the\numexpr.

添加

\documentclass{article}

\def\n{1}
\begin{document}
    \n\ + 2: \the\numexpr\n+2
\end{document}

更新:更全面的版本。此指令\allmightymath將使用 計算整數表達式(即使它們沒有簡化)expl3

整數表達式

\documentclass{article}

\usepackage{expl3,xparse}
\ExplSyntaxOn
\NewDocumentCommand { \allmightymath } { m }
    {
        \int_eval:n { #1 }
    }
\ExplSyntaxOff

\def\n{1}
\begin{document}
    \n\ + 2: \the\numexpr\n+2\\
    \allmightymath{4*(\n-1)+2}\\
    \def\n{2}
    \allmightymath{4*(\n-1)+2}
\end{document}

答案2

這是一個非常強大的例子前列腺素生長因子包裹。有了它,您可以在 TeX 文件中做一些很棒的數學運算。

\documentclass{article}
\usepackage{pgfmath,pgffor}
\begin{document}

\foreach \n in {0,1,...,100}{
  \pgfmathparse{int(\n+2)}
  \pgfmathresult\par
}
\end{document}

答案3

這是一個基於 LuaLaTeX 的解決方案。它啟動一個for循環並列印出每個nfrom120的值nn-24(n-1)+2

\documentclass{article}
\begin{document}
\directlua{%
   for n = 1 , 20 do
     tex.sprint ( n .. " ".. n+2 .. " ".. 4*(n-1)+2 .. "\string\\par" )
   end}
\end{document}

答案4

您可以使用xfp

\documentclass{article}
\usepackage{xfp}
\begin{document}
$1 + 2 = \fpeval{1+2}$
\end{document}

在此輸入影像描述

\documentclass{article}
\usepackage{xfp}
\begin{document}
\def\n{1}
$4 (n-1) + 2 = \fpeval{4*(\n-1)+2}$
\end{document}

在此輸入影像描述

相關內容