我定义了一个新命令来对章节中的问题进行编号:
\newcounter{problemNo} %problem counter
\setcounter{problemNo}{1} %start at one
\newcommand\problem[1]{\textbf{Problem \thechapter.
\arabic{problemNo} }#1 \par\smallskip\stepcounter{problemNo}\noindent}
此代码存在一些缩进问题:
我也尝试过使用\setlength{\parindent}{0cm}
,但没有成功:
\newcommand\problem[1]{\textbf{Problem \thechapter.\arabic{problemNo}
}#1 \par\smallskip\stepcounter{problemNo}\setlength{\parindent}{0cm}}
事实上,现在所有地方的缩进都为零。
仅在命令后删除缩进的正确方法是什么\problem
?
完整代码:
\documentclass[12pt,twoside]{book}
\newcounter{problemNo}
\setcounter{problemNo}{1}
\newcommand\problem[1]{\textbf{Problem \thechapter.
\arabic{problemNo} }#1 \par\smallskip\stepcounter{problemNo}\noindent}
\begin{document}
\chapter{Problems}
\problem{Solve this problem:}
Problem statement.\\
\problem{Solve this problem too:}
Problem statement.\\
\end{document}
答案1
这是一个选项:
\documentclass{book}
\newcounter{problemNo}[chapter]
\renewcommand{\theproblemNo}{\thechapter.\arabic{problemNo}}
\newcommand{\problem}[1]{%
\par
\addvspace{\bigskipamount}
\refstepcounter{problemNo}%
\noindent\textbf{Problem \theproblemNo}
#1
\par\nobreak
\smallskip
\noindent\ignorespaces
}
\begin{document}
\chapter{Problems}
\problem{Solve this problem:}
Problem statement.
\problem{Solve this problem too:}
Problem statement.
\end{document}
变化的内容:
计数器的正确定义是
problemNo
每次重置[chapter]
,并具有包括章节编号表示在内的表示形式(\thechapter
)。A
\problem
首先添加一些空间,直到达到\bigskipamount
。这
problemNo
在设置前步进问题 XY\label
;如果您使用- ,这允许正确引用\ref
。在设定问题陈述之后,
\par
启动图表中断没有可以进行分页(感谢\nobreak
)。这样可以避免问题 XY在页面底部,问题陈述在下一页顶部。
问题陈述的后续段落将有常规的\parindent
。如果您想完全避免这种情况,请将其添加\setlength{\parindent}{0pt}
到您的序言中。
一种完全不同的方法是将你的定义\problem
为类似于定理的环境。但是,这需要改变你的输入。
答案2
这个如何?
\documentclass[12pt,twoside]{book}
\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{problem}{Problem}[chapter]
\begin{document}
\chapter{Problems}
\begin{problem}
Solve this problem:\\ Problem statement.
\end{problem}
Text in middle.
\begin{problem}
Solve this problem:\\ Problem statement.
\end{problem}
\begin{problem}
Solve this problem:\\ Problem statement.
\end{problem}
\end{document}