我是新手,遇到了以下情况。让我先输入部分内容
\documentclass{article}
\begin{document}
\begin{eqnarray*}
f_2(u_iu_{i+1})&=&\left\{
\begin{array}{ll}
4 & \hbox{for~odd~$i$} \\
3 & \hbox{for~even~$i$,}
\end{array}
\right.\\[.2cm]
f_2(v_mv_1)&=&5,\\
f_2(u_mu_1)&=&5,\\
for $2\leq i\leq m-1,$
f_2(v_iu_i)&=&5,\\
f_2(v_mu_m)&=&1,\\
f_2(v_1u_1)&=&2.
\end{eqnarray*}
\end{document}
我的问题是:我希望句子“for $2\leq i\leq m-1,$”位于最左边,而上面显示的所有其他等号都应对齐。但我没能做到这一点。请有人帮我解决。
PS 如有必要,请随意编辑以上内容。
答案1
我提出了两种解决方案,基于align*
和cases*
来自的环境mathtools
(它类似于标准cases
,只是第二列是在文本模式下排版的):
\documentclass{article}
\usepackage{mathtools}
\usepackage[showframe]{geometry}
\begin{document}
\begin{align*}
f_2(u_iu_{i+1}) & =\begin{cases*}
4 & for odd $ i $ \\
3 & for even $ i $, \end{cases*} \\
f_2(v_mv_1) & = 5, \\
\text{for $2\leq i\leq m-1$,}
\quad f_2(v_iu_i) & = 5, \\
f_2(v_mu_m) & = 1, \\
f_2(v_1u_1) & = 2.
\end{align*}
\begin{align*}
f_2(u_iu_{i+1})&=\begin{cases*}
4 & for odd $ i $\\
3 & for even $ i $,
\end{cases*} \\
f_2(v_mv_1)&= 5,\\
f_2(v_iu_i) & = \begin{cases*}5 & for $ 2\leq i\leq m-1 $, \\
1 & for $ i = m$,\\
2 & for $ i = 1$. \end{cases*}
\end{align*}
\end{document}
答案2
你可以组合几个这样的分支所以我会选择这样的方法:
我建议不要eqnarray
使用align*
来自数学包。还有一个cases
用于排版分段函数的环境和一个\text{...}
用于在方程式内写入文本的命令。把它们放在一起,下面是我使用的代码:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
f_2(u_iu_j)&=\begin{cases}
3,&\text{if $i$ is odd and }j=i+1,\\
4,&\text{if $i$ is even and }j=i+1,\\
5,&\text{if $i=m$ and }j=1,
\end{cases}\\
f_2(v_iu_i)&=\begin{cases}
1,&\text{if }i=m,\\
2,&\text{if }i=1,\\
5,&\text{if }2 \leq i \leq m-1.
\end{cases}
\end{align*}
\end{document}
答案3
在纯 TeX 中,应该这样做:
$$\eqalignno{
f_2(u_i u_{i+1}) &= \cases{4 & for odd $i$, \cr 3 & for even $i$,} \cr
f_2(v_m v_1) &= 5, \cr
f_2(u_m u_1) &= 5, \cr
\noalign{\hbox{for $2 \leq i \leq m-1$,}}
f_2(v_i u_i) &= 5, \cr
f_2(v_m u_m) &= 1, \cr
f_2(v_1 u_1) &= 2.
}$$
\bye