Execute cálculos simples em variáveis ​​definidas pelo usuário

Execute cálculos simples em variáveis ​​definidas pelo usuário

No meu documento, tenho uma variável definida pelo usuário como:

 \newcommand{\MyNumber}{30}

Suponha que, se eu quiser usar uma derivada de \MyNumber, poderia ser \MyNumber+10, 100-\MyNumber, 5*\MyNumber of \MyNumber/5, isso pode ser feito?

Um passo à frente, se eu tiver:

\newcommand{\MyNumberA}{30}

\newcommand{\MyNumberB}{60}

Posso usar \MyNumberA+\MyNumberB?

Responder1

Você pode usar etexrecursos para cálculos simples:

\numexpr (\MyNumberA + 2* \MyNumberN)/3 \relax `

calcula uma média ponderada de \MyNumberA e \MyNumberB.

Da mesma forma, você pode fazer cálculos com dimensões, usando \dimexpr.

Responder2

Você pode fazer tudo isso usando contadores Plain TeX/LaTeX.

\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}

insira a descrição da imagem aqui

informação relacionada