我正在使用\documentclass{exam}
来准备一本解决方案手册。它在一个部分中有多个小节。我希望问题编号继续运行,即使在更改部分之后也是如此。我尝试使用\begin{questions}[resume]
,如在不同上下文中建议的那样,但徒劳无功。我也尝试过只有一个\begin{questions} ... \end{questions}
块,但在这里,小节会缩进。任何帮助都将不胜感激。
\documentclass{exam}
\usepackage[utf8]{inputenc}
\usepackage{amsmath, amssymb, enumitem}
\begin{document}
\section{Sec 1}
\subsection{Sub 1}
\begin{questions}
\question Q1
\question Q2
\subsection{Sub 2}
\question Q3
\question Q4
\end{questions}
\end{document}
答案1
这似乎有效,但是可能干扰 的其他方面exam
。请谨慎行事。
question
这个想法是保存每个命令的计数器的值\subsection
,然后使用当前值question
但添加到前一个值,因此计数是渐进的。
\documentclass{exam}
\usepackage{etoolbox}
\makeatletter
\newcounter{savequestion}
\preto\subsection{\setcounter{savequestion}{\value{question}}}
\newcommand\newquestionlabel{\the\numexpr\value{question}+\value{savequestion}\relax.}
\patchcmd{\question@number}{\questionlabel}{\newquestionlabel}{}{}
\patchcmd{\question@number}{\questionlabel}{\newquestionlabel}{}{}
\patchcmd{\questions}
{question@\arabic{question}}
{question@\the\numexpr\value{question}+\value{savequestion}\relax}
{}{}
\makeatother
\begin{document}
\section{Sec 1}
\subsection{Sub 1}
\begin{questions}
\question Q1
\question Q2
\end{questions}
\subsection{Sub 2}
\begin{questions}
\question Q3
\question Q4
\end{questions}
\end{document}