如何处理具有多个嵌套 \and 和 \or 的条件?

如何处理具有多个嵌套 \and 和 \or 的条件?

这个简单的例子将会失败,因为没有考虑优先级规则:

\documentclass{article}
\usepackage{ifthen}

\begin{document}
\newcommand{\bibi}2
\newcommand{\toto}3
\ifthenelse{ {\toto=3\and\bibi=2} \or {\bibi=5\and\toto=1} }{Yes}{No}
\end{document}

它应该输出“Yes”,但却输出“No”,因为最后的“\and”测试不满足。

那么处理这类测试的最佳方法是什么呢?更复杂的测试给我带来了麻烦,那就是:

[(a and b) or (c and d)] and (e or f)

其中 a,...,f 是布尔值?

答案1

您可以在条件语句中使用\(and来显式嵌套表达式。请勿使用括号组(如您的示例所示)。\)\ifthenelse{}

相关内容