分段函数中的对齐

分段函数中的对齐

我希望以下两个等式在显示时=对齐。我使用以下代码。=未对齐,并且在每行中2.5pt排版在前面=!此外,左括号和第一个等式之间的空格量不合适。(cases 环境在左括号和第一个等式之间提供了“正确”的空格,但它没有对齐=。)

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\begin{equation*}
\left\{
\begin{array}{c@{2.5pt}c}
a^{3} + b^{3} &= -q \\
ab &= \dfrac{-1}{3} \, p
\end{array}
\right.
\end{equation*}

\end{document}

答案1

我会在这里使用aligned而不是array,因为从语义上讲,它实际上不是一个cases情况,也不是array

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation*}
\left\{
\begin{aligned}
a^{3} + b^{3} &= -q \\
ab &= \dfrac{-1}{3} \, p
\end{aligned}
\right.
\end{equation*}
\end{document}

在此处输入图片描述

答案2

列分隔规范@{<stuff>}插入<stuff>在列之间,因此结果符合您的预期。如果您想要间隙2.5pt,则需要插入@{\hspace{2.5pt}}

但是,如果你的主要目的是对齐标志处的各个部分=,那么你可以使用

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\begin{equation*}
  \left\{
    \begin{array}{c@{}c@{}c}
      a^3 + b^3 &{}={}& -q \\
             ab &{}={}& \dfrac{-1}{3} \, p
    \end{array}
  \right.
\end{equation*}

\end{document}

答案3

我建议使用empheq带有选项的包来简化语法overload。它为中等大小的分数加载mathtools, which in turn loadsamsmath . I also usenccmath`,在我看来,这里看起来更好:

\documentclass{article}

\usepackage[overload]{empheq}
\usepackage{nccmath}

\begin{document}

\begin{align*}[left = \empheqlbrace]
a^{3} + b^{3} &= -q \\
ab &= -\mfrac{1}{3}\, p
\end{align*}

\end{document} 

在此处输入图片描述

答案4

当我尝试使用时cases,它对齐得很好并且运行良好:

\[
  \begin{cases}
    a^3+b^3 &= -q \\
    ab      &= -\dfrac{1}{3}\,p.
  \end{cases}
\]

如果这不是答案,而您确实坚持使用array,您可以尝试将列分隔符更改为周围有一点空间的等号,然后放在@{}第一列之前以解决空间过多的问题:

\[
  \left\{ 
  \begin{array}{@{}c@{\;=\;}c} 
    a^{3} + b^{3} & -q \\
    ab            & \dfrac{-1}{3} \, p
  \end{array}
  \right.
\]

两段代码的比较

相关内容