if 语句
在 latex 中,无论条件是否为真,我们都可以使用内置命令来执行代码。
比较两个整数: \ifnum\value{num}>n {A} \else {B}\fi
此代码执行 A 如果 num> n else B.我们可以用<和=替换>。
如果数字是奇数: \ifodd\value{num} {A}\else {B}\fi
如果 num 是奇数,那么它执行 A else B.
如果条件: \ifthenelse{condition}{A}{B}
我们必须加载 ifthen 包才能使用此命令。如果条件为真则执行 A else B.
用\( \)
,\AND
,\OR
,\NOT
创造复杂的条件是可能的。
例如: \ifthenelse{\(\NOT 4<2 \OR 4>11\)\AND\isodd{4}}{A}{B}
这段代码在页面上写下 B
。\NOT 4<2
是真的,4>11
是假的。如果我们用 OR
连接 false 和 true 语句,那么结果为 true。所以\(\NOT 4<2 \OR 4>11\)
是真的。\isodd{4}
是假的,因为 4 是偶数。与 AND
连接的 false 和 true 语句为 false,因此输出为 B.
示例代码:
\documentclass{article}
\usepackage{ifthen}
\begin{document}
\newcounter{num}
\setcounter{num}{10}
If num$>$100 then the next sentence will be "Num is large." else "Num is small."
Num is \ifnum \value{num}>100 {large} \else {small}.
If num is odd then the next sentence will begin with "Odd" if not then with "Even"
\ifodd \value{num} {Odd} \else {Even} numbers are cool.
If (num$>$3 and (1$<$0 or num$=$10)) is true then the next sentence will be "True." else "False."
\ifthenelse{\value{num}>3\AND\(1<0 \OR \value{num}=10\)}{True.}{False.}
\end{document}