von Gastname ungültig » Fr 7. Mai 2021, 10:37
\ifnum wertet keine Ausdrücke aus, sondern vergleicht Zahlen (daher der Name der Anweisung). Eine Zahl endet für TeX bei allem, was bei der Expansion keine Ziffer ist, in dem Fall also bei +. Seit LaTeX e-TeX verwendet, können aber natürlich number expressions verwendet werden, also beispielsweise (in Ermangelung eines Minimalbeispiel ungetestet):
\ifnum\numexpr#1+#2\relax<\step
Näheres zu \numexpr etc. ist im e-TeX Manual zu finden.
[tt]\ifnum[/tt] wertet keine Ausdrücke aus, sondern vergleicht Zahlen (daher der Name der Anweisung). Eine Zahl endet für TeX bei allem, was bei der Expansion keine Ziffer ist, in dem Fall also bei [tt]+[/tt]. Seit LaTeX e-TeX verwendet, können aber natürlich [i]number expressions[/i] verwendet werden, also beispielsweise (in Ermangelung eines [mwe][/mwe] ungetestet): [code]\ifnum\numexpr#1+#2\relax<\step[/code]
Näheres zu [tt]\numexpr[/tt] etc. ist im [doc]e-TeX[/doc] Manual zu finden.