In meinem Dokument habe ich eine benutzerdefinierte Variable wie:
\newcommand{\MyNumber}{30}
Angenommen, ich möchte eine Ableitung von \MyNumber verwenden. Diese könnte dann \MyNumber+10, 100-\MyNumber, 5*\MyNumber von \MyNumber/5 lauten. Ist das möglich?
Ein Schritt vorwärts, wenn ich:
\newcommand{\MyNumberA}{30}
\newcommand{\MyNumberB}{60}
Kann ich \MyNumberA+\MyNumberB verwenden?
Antwort1
Sie können etex
Funktionen für einfache Berechnungen verwenden:
\numexpr (\MyNumberA + 2* \MyNumberN)/3 \relax `
berechnet einen gewichteten Mittelwert von \MyNumberA und \MyNumberB.
Auf ähnliche Weise können Sie Berechnungen mit Dimensionen durchführen, indem Sie verwenden \dimexpr
.
Antwort2
Dies alles können Sie mithilfe von Plain TeX/LaTeX-Zählern tun.
\documentclass{article}
\pagestyle{empty}% for cropping
\begin{document}
\obeylines%
\newcount\MyNumber%
\MyNumber=30%
\def\tp#1{\texttt{\string\MyNumber #1} =}%
\tp{} \the\MyNumber
\advance\MyNumber by 10\relax%
\tp{ + 10} \the\MyNumber
\multiply\MyNumber by 100\relax%
\tp{ * 100} \the\MyNumber
\medskip
Adding numbers:
\newcount\MyNumberA
\newcount\MyNumberB
\MyNumberA=30
\MyNumberB=60
\the\MyNumberA + \the\MyNumberB = \the\numexpr\MyNumberA + \MyNumberB\relax
\end{document}