附录中 newtheorem 与 newtheorem 重叠的次数

附录中 newtheorem 与 newtheorem 重叠的次数

我有以下代码:

\documentclass[a4paper,12pt]{article} 
\renewcommand{\proofname}{\textbf{Beweis}}
\newtheorem{Satz}{Satz}[section]
\newtheorem{code}[Satz]{MATLAB-Code} 

\begin{document}

\section*{Anhang}
\renewcommand\thesection{\hspace{-1em}}
\sectionmark{Anhang}
\addcontentsline{toc}{section}{Anhang}
\begin{code}
...
\end{code}
\end{document}

问题是代码的编号与附录中的 MATLAB-Code 字样重叠(Anhang)。我猜这与附录没有章节编号有关。我该如何解决这个问题?如果我写

\newtheorem{code}{MATLAB-Code} 

那么 newtheorem 的编号和 MATLAB 代码的编号就不会重叠,但是代码会从 1 开始编号,而不是使用节编号。非常感谢!!!

答案1

您询问如何删除附录中定理的章节编号(如项目)。您发现,重新定义\thesection为会给您带来很多问题。\hspace{-1em}

要删除附录中这些元素的章节编号,请使用chngcntr包的功能\counterwithout

示例输出

\documentclass[a4paper,12pt]{article} 

\usepackage{chngcntr}

\newtheorem{Satz}{Satz}[section]
\newtheorem{code}[Satz]{MATLAB-Code} 

\begin{document}

\section{A section}

\begin{Satz}
  Theorem text.
\end{Satz}

\section*{Anhang}

\counterwithout{Satz}{section}
\sectionmark{Anhang}
\addcontentsline{toc}{section}{Anhang}
\begin{code}
...
\end{code}
\end{document}

相关内容