8

Я набираю некоторые задания с базовой структурой

Проблема номер проблемы

Решение

и я не очень доволен источником LaTeX, который я делаю. Например

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

Это решение не очень хорошее, так как оно не использует автоматические счетчики, и, хотя задания короткие, я мог бы иметь более длинные позже и нуждаться в оглавлении.

Теперь проблемы в моем контексте - это логические разделы моих документов, и поэтому \section имеет смысл. Будет ли какой-то тип новой команды сказать \ проблема имеет больше смысла?

5 ответов5

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 из математического факультета колледжа Харви Мадда.

3

Я нашел этот пример. Это не совсем то, что вы хотите, но если вы посмотрите с помощью счетчиков и определений новой и новой команд, вы сможете делать именно то, что вам нужно, что мне было не совсем понятно.

\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}
1

Я бы предложил использовать enumerate для организации проблем и использовать разделы для их группировки. Например:

\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]}

Я включил изменение шрифта в {} чтобы оно влияло только на это определение среды, а не на другие, которые у вас могут быть.

0

Один из способов сделать это - использовать уравнение среды:

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

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

Это дает вам пронумерованные уравнения и способ ссылаться на них.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .