我是一名学生,正在自学使用 LaTeX(及相关工具)来输入作业。一切进展顺利,我对目前所取得的成绩感到非常满意。不过,我还有一些疑问。
我正在尝试输入一个证明,其中步骤位于一列,解释位于第二列,中间用竖线隔开。两列表格已帮助我完成了大部分工作:
\documentclass[a4paper,12pt]{article}
\usepackage{amsthm}
\begin{document}
We want to show that -2 = 2.
\begin{proof}
\begin{tabular}{r|l}
$-2 = 2$ & assuming the conclusion \\
$(-2)^2 = 2^2$ & square both sides \\
$4$ = $4$ & as desired
\end{tabular}
\end{proof}
\end{document}
但是,左列中的等号没有对齐。理想情况下,我希望能够像在环境align
或类似环境中一样将它们对齐。可以这样做吗?
$
此外,我不太喜欢在左列的每一行上重复。有没有办法自动完成这个操作?
在此先感谢大家的回答,这也是我在这里的第一个问题,所以如果我无意中违反了这个社区的任何习俗,请告诉我。
答案1
做得简单点。
\documentclass[12pt,a4paper]{article}
\usepackage{mathtools} % loads »amsmath«
\usepackage{amsthm}
\begin{document}
We want to show that $-2=2$.
\begin{proof}
\begin{align*}
-2 &= 2 && \smash{\Big|}\text{ assuming the conclusion} \\
(-2)^2 &= 2^2 && \smash{\Big|}\text{ square both sides} \\
4 &= 4 && \smash{\Big|}\text{ as desired}
\end{align*}
\end{proof}
\end{document}
答案2
\documentclass[a4paper,12pt]{article}
\usepackage{amsthm,amsmath}
\begin{document}
We want to show that $-2 = 2$.
\begin{proof}
$\arraycolsep=1.5pt
\begin{array}[t]{rl|l}
-2 &= 2 & \text{ assuming the conclusion}\\
(-2)^2 &= 2^2 & \text{ square both sides} \\
4 &= 4 & \text{ as desired}
\end{array}$
\end{proof}
\end{document}
答案3
您还可以使用其他列来对齐等号。例如,您可以使用 ar 列,然后使用 ac 列作为关系符号,然后使用 al 列。
这
array
包允许将命令插入到表列定义中。例如,要获取右对齐的数学列,请使用>{$}r<{$}
。如果所有公式都是方程式,您可以指定等号作为列分隔符:
\begin{tabular}{>{$}r<{$}@{\,=\,}>{$}l<{$}|l}
。