我正在写一份报告,里面有正文练习和章末练习。我希望所有练习都按顺序编号。我希望正文练习以斜体字“练习”开头,然后是编号。对于章末练习,我希望不是前面有“锻炼”两个字,只是编号。
我尝试使用 amstext 中的 \theoremstyle 来执行此操作,但编号不正确。这是一个最小(非)工作示例:
\begin{document}
\section{First section}
Cite the second exercise \ref{two}. Cite the third exercise \ref{three}.
\begin{exer} \label{one} First exercise. \end{exer}
End of Chapter Exercises
\stepcounter{exer} \theexer. \label{two} Second Exercise.
\stepcounter{exer} \theexer. \label{three} Third Exercise.
\end{document}
当我运行此代码时,我最终得到输出
Cite the second exercise 1. Cite the third exercise 1.
Exercise 1. First exercise.
End of Chapter Exercises.
2. Second Exercise.
3. Third Exercise.
这是不正确的。如果我将第二和第三个练习的 latex 代码替换为
\begin{exer} \label{two} Second exercise. \end{exer}
\begin{exer} \label{three} Third exercise. \end{exer}
那么编号就会正确显示,但不是我需要的格式。
我真的很困惑。非常感谢您的帮助。谢谢!
答案1
使用\refstepcounter
而不是\stepcounter
,以便设置要引用的适当值。
另一方面,我更喜欢一种更抽象的方法:
\documentclass{article}
\usepackage{amsmath,amsthm}
\theoremstyle{remark}
\newtheorem{exer}{Exercise}
\newtheoremstyle{endchapterexer}
{0pt} % ABOVESPACE
{0pt} % BELOWSPACE
{\upshape} % BODYFONT
{0pt} % INDENT (empty value is the same as 0pt)
{\upshape} % HEADFONT
{.} % HEADPUNCT
{ } % HEADSPACE
{\thmnumber{#2}} % CUSTOM-HEAD-SPEC
\theoremstyle{endchapterexer}
\newtheorem{eexer}[exer]{}
\begin{document}
\section{First section}
Cite the second exercise \ref{two}. Cite the third exercise \ref{three}.
\begin{exer}\label{one}
First exercise.
\end{exer}
\subsection*{End of Chapter Exercises}
\begin{eexer}\label{two}
Second Exercise.
\end{eexer}
\begin{eexer}\label{three}
Third Exercise.
\end{eexer}
\end{document}