LaTeX中一种更结构化的排版排版方式


8

我正在用基本结构输入一些作业

问题 的问题数

我对自己制作的LaTeX源并不十分满意。例如

\section*{Problem 1}
In order to solve $a^2+b^2 = c^2$ ...

该解决方案不是很好,因为它不使用自动计数器,尽管分配很短,但我以后可能会更长一些,并且需要一个目录。

现在,就我而言,问题是文档的逻辑部分,因此\ section是有意义的。某种类型的新命令会说\问题更有意义吗?


2
您可以在堆栈溢出中找到比超级用户更多的LaTeX问题和答案:stackoverflow.com/questions/tagged/latex。请参阅meta问题meta.stackexchange.com/questions/7135/…meta.stackexchange.com/questions/12918/…,以获取有关最适合此类问题的讨论。
dmckee ---前主持人小猫,

在Stack Overflow上感觉不合适,因为这是一项更加数学化的作业,并且LaTeX不太编程。
Flame

1
这是完全清楚,但似乎是对SO比SU,这一切都...更多LaTeXers
dmckee ---前主持人小猫

Answers:


3

我找到了这个例子。这并不是您想要的,但是如果您使用计数器以及newcommand和renewcommand定义进行查找,那么您应该可以完全按照自己的意愿进行操作,这对我来说还不是很清楚。

\documentclass{article}
\begin{document}

\newcounter{set}
\setcounter{set}{2}
\newcounter{problem}[set]

\newcommand{\problem}{\refstepcounter{problem}{\vspace{2\baselineskip}\noindent\large \bfseries Problem~\arabic{set}.\arabic{problem}}\\}

\problem
\textit{Sum-product algorithm:}  Consider the sum-product\ldots.

\problem
\textit{Max-marginals:} Consider the max-marginals\ldots.

\stepcounter{problem}
\problem
Demonstraction of \verb"\stepcounter"

\addtocounter{problem}{-1}
\problem
Counter increments can be negative!

\end{document}

9

我将考试文档类用于此任务。然后,一个基本文档如下所示:

\documentclass[answers]{exam}
\begin{document}
\firstpageheader{}{}{\bf\large Name \\ Class \\ Assignment \\ Due Date}
\runningheader{Name}{Class Assignment}{Due Date}

\begin{questions}
\question
    This is the question.

\begin{solution}
    This is the solution to the question.
\end{solution}

\end{questions}
\end{document}

在发现考试班之前,我使用了哈维·穆德学院数学系的hmcpset文档班。


1

我建议使用枚举来组织问题,并使用部分对它们进行分组。例如:

\begin{enumerate}
\item
The ``enumerate'' environment numbers the list elements, like this.

Items in a list can contain multiple paragraphs.
These paragraphs are appropriately spaced and indented according to their
position in the list.
  \begin{itemize}
  \item The ``itemize'' environment sets off list items with ``bullets'',
like this. Finally, the ``description'' environment lets you put your own
    \begin{description}
    \item[A] label on each item, like this ``A''.
    \item[If the label is long,] the first line of the item text will
be spaced over to the right as needed.
    \end{description} 
\end{enumerate}

取自pangea.stanford.edu LaTeX示例

这样做可以让你的方式更灵活的结构化你的个人作业的细节-例如,你可以尽可能深,你需要一一列举,但只能采取部分以3个级别。


1

对于这种情况,我可能会使用该theorem包装。使用它,您可以定义类似于定理的环境:

\newtheorem{problem}{Problem}[chapter]

在这里,可选参数[chapter]表示要按章进行编号,因此您可以像第一章中的1.1、1.2,第二章中的2.1这样进行编号。如果您只想对整个文档进行顺序编号,请完全省略该参数。

您将像这样使用它:

\begin{problem}\label{prob:1}
  ... text here
\end{problem}

当然,您可能想给它一个更具描述性的标签,而不仅仅是prob:1

同样,默认的排版将文本以斜体显示。您可以通过将定义替换为类似内容来更改它

{\theorembodyfont{\rmfamily}\newtheorem{problem}{Problem}[chapter]}

我将字体更改包含在内,{}以使其仅影响此环境定义,而不会影响您可能拥有的任何其他字体。


我曾经这样做过;然后我发现了为此任务设计的文档类。
las3rjock

0

一种方法是使用方程式环境:

\begin{equation}
\label{myeq}
a^2 + b^2 = c^2
\end{equation}

In order to solve \eqref{myeq} ...

这为您提供了编号的方程式以及引用它们的方式。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.