변수 \n을 시작하는 for-loop를 사용하고 있습니다. (\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
다음은 매우 강력한 예입니다.PGF패키지. 이를 통해 TeX 문서 내에서 멋진 수학 작업을 수행할 수 있습니다.
\documentclass{article}
\usepackage{pgfmath,pgffor}
\begin{document}
\foreach \n in {0,1,...,100}{
\pgfmathparse{int(\n+2)}
\pgfmathresult\par
}
\end{document}
답변3
LuaLaTeX 기반 솔루션은 다음과 같습니다. 루프를 시작 하고 from 까지 각각에 대해 , 및 의 값을 for
인쇄합니다 .n
1
20
n
n-2
4(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}