我使用如下代码的子方程
\begin{subequations}
\begin{align}
1=2\\
3=4\\
x=y
\end{align}
\end{subequations}
它将三行编号为 (1a)、(1b) 和 (1c)。我想将其改为编号为 (1a)、(1d) 和 (1f),即跳过一些字母。我该怎么做?
答案1
我将定义一个\skipeqs
在相关行开头使用的命令。
\documentclass{article}
\usepackage{amsmath}
\newcommand{\skipeqs}[1]{\addtocounter{equation}{#1}}
\begin{document}
\begin{subequations}
\begin{align}
1=2 \label{one} \\
\skipeqs{2}
3=4 \label{two} \\
\skipeqs{1}
x=y \label{three}
\end{align}
\end{subequations}
\eqref{one}
\eqref{two}
\eqref{three}
\end{document}
答案2
您可以在三方程结构的第 2 行和第 3 行插入指令\addtocounter{equation}{2}
和。 (与 作用相同。)\stepcounter{equation}
\stepcounter{equation}
\addtocounter{equation}{1}
\documentclass{article}
\usepackage{amsmath} % for align and subequations environments
\setlength\textwidth{8cm} % just for this document
\begin{document}
\noindent
original form:
\begin{subequations}
\begin{align}
1&=2\\
3&=4\\
x&=y
\end{align}
\end{subequations}
\bigskip\noindent
with \verb+\addtocounter{equation}{2}+ and \verb+\stepcounter{equation}+:
\begin{subequations}
\begin{align}
1&=2\\
3&=4 \addtocounter{equation}{2} \\
x&=y \stepcounter{equation}
\end{align}
\end{subequations}
\end{document}