Division in Latex – Ich erhalte falsche Werte – So führen Sie eine Division richtig durch

Division in Latex – Ich erhalte falsche Werte – So führen Sie eine Division richtig durch

Ich versuche, eine Division durchzuführen, und manchmal funktioniert es, und manchmal erhalte ich einen unerwarteten Wert.

\documentclass[fleqn]{article}
\usepackage{amsmath}
\usepackage{enumerate}
\usepackage{cancel}
\begin{document}
\newcommand\coeff{5}
\newcommand\addend{13}
\newcommand\result{45}
\newcommand\exaddend{\the\numexpr\addend*\coeff}
\newcommand\resultrest{\the\numexpr\result-\exaddend}
\begin{align*}
        \coeff x+\exaddend&=\result \\
        -\exaddend&=-\exaddend\\
        \coeff x&=\resultrest\\
        \frac{\cancel{\coeff}x}{\cancel{\coeff}}&=\frac{\resultrest}{\coeff}\\
        x&=\boxed{\the\numexpr\resultrest/\coeff\relax}
        \end{align*}\vspace{1em} 
\end{document}

Es funktioniert, wenn ich feste Werte verwende:
Es scheint, dass die letzte Zeile \the\numexpr\resultrest/\coeff\relax das Problem verursacht. Bitte helfen Sie!

Antwort1

Sie haben \extatendund \resultrestmit nicht abgeschlossen \numexpr(kein \relax) definiert, wenn Sie sie also in einem anderen verwenden \numexpr, wird der Ausdruck tatsächlich wörtlich eingefügt, Sie können also auswerten, 5-1/2wann Sie beabsichtigt haben (5-1)/2. Ich schlage vor, Sie setzen \relaxan das Ende von beiden \extatendund \resultrest.

Andere Alternativen bestehen darin, sie einschließlich Klammern zu definieren, oder, wenn Sie nur einen einzigen festen Wert wünschen, sie mit zu definieren \edef.

Sie sagen nicht, welchen unerwarteten Wert Sie für welche Eingabe erhalten, daher bleibt die Möglichkeit, dass Sie einfach nicht mit der Ganzzahldivision gerechnet haben.

verwandte Informationen