我感觉很傻。基本上我想用 \numexpr 除以加法的结果,例如:
(10 + 5) / 3
问题是,如果我在那里放括号,比如\numexpr (10+5)/3 \relax
我的在线编辑器就会返回语法错误。到目前为止,我发现的唯一方法是这样做:
\numexpr \numexpr 10+5 \relax / 3 \relax
但说实话读起来很痛苦。有更好的方法吗?谢谢!
答案1
\documentclass{article}
\usepackage{xfp}
\begin{document}
\inteval{(10+5)/3}
\end{document}
答案2
这是一个基于 LuaLaTeX 的解决方案。它假设您正在进行整数运算,主要是因为您的代码示例使用了\numexpr
。如果结果不需要是整数值,则只需省略该math.floor
部分。
\documentclass{article}
\newcommand\inteval[1]{\directlua{tex.sprint(math.floor(#1))}}
\begin{document}
\inteval{( 10 + 5 ) / 3 }
\end{document}
答案3
使用 PSTricks 的解决方案仅用于娱乐目的。
\documentclass[border=\dimexpr355pt/113\relax]{standalone}
\usepackage{pst-calculate}
\begin{document}
\pscalculate{(10+5)/2}
\end{document}
或者,如果您想要以分数形式获取输出,则可以使用名为 SageMath 的计算机代数系统,该系统可以通过sagetex
包从 LaTeX 调用,如下所示。需要额外设置,如果您需要,请告诉我。
\documentclass{standalone}
\usepackage{sagetex}
\begin{document}
$\sage{(10+5)/2}$
\end{document}