\hfill 和成对分隔符的间距问题

\hfill 和成对分隔符的间距问题

假设我想使用 编写一个练习列表enumerate。对于列表中的每个项目,正确答案都位于行末,并写在方括号内。我会这样写:

\documentclass{article}

\usepackage{amsmath}

\begin{document}
\begin{enumerate}
    \item $2a=4$ \hfill $\left[a=2\right]$
    \item $2a=1$ \hfill $\left[a=\frac{1}{2}\right]$
    \item $3a=6$ \hfill $\left[a=2\right]$
\end{enumerate}
\end{document}

但是,行尾的方括号没有正确对齐:

较大的括号会产生不必要的空间

我无法弄清楚这种行为的原因:\mathclose{}在后面添加\right没有帮助。这不是问题,因为如果我删除设置并手动转到新行,enumerate问题仍然会出现。enumerate

答案1

发生的事情是,由于您使用了\left\right,所以在分数行上会得到一个稍大(且不同)的右方括号。顺便说一句,每个稍大的括号都会在其周围增加一点空间。因为这实际上是内置在字符设计中的,所以消除它充其量也是一种挑战。很大程度上取决于右边的解决方案是什么样的。\left...\right如果答案不是特别高,您可以不用括号(例如,简单的分数应该没问题,但\frac{a^2}{b}看起来可能很奇怪)。也许用颜色代替括号来标记答案会更好?或者将它们放在方框中而不是括号中。无论如何,您都希望将所有内容包装在宏定义中,例如,

\newcommand*[1]\answer{\hfill\fbox{#1}
...
\item $2a=4$ \answer{$a=2$}

这样做的好处是,你可以使用相同的来源来定义无解问题列表

\newcommand*[1]\answer{}

相关内容