使用 examdesign 类在 latex 中的多项选择题中给出多个答案

使用 examdesign 类在 latex 中的多项选择题中给出多个答案

有一种 MCQ(多项选择题)类型,其中每个 MCQ 可以有一个或多个答案,最大可能答案数可以等于总选项数。如何使用 examdesign 类在 latex 中完成此操作?

以下是一个例子:

\documentclass[a4paper, 11pt]{examdesign}

\parindent 0pt

\usepackage[margin=1in]{geometry}

\class{Your Exam}

\Fullpages

\ContinuousNumbering

\DefineAnswerWrapper{}{}

\NumberOfVersions{1}

\ShortKey

\NoRearrange
\begin{document}

\begin{multiplechoice}[title={A title}]

These are meant to be multiple-choice questions, with multiple answers.

\begin{question}
  How many people live in Wales?
    \choice{Approximately 2,811,865.}
    \choice[!]{More than in most countries.}
    \choice{None.}
    \choice{Exactly seventeen.}
\end{question}

\begin{question}
  How many cows does it take to graze a field?
  \choice[i]{One.}
  \choice[i]{Two.}
  \choice{Three.}
  \choice[i]{Four}
\end{question}
\end{multiplechoice}
\end{document}

我想要不同的 \choices 的正确答案,并且全部选择应该打印在解决方案中。

答案1

examdesign已经支持多个正确答案。

\exam@ShortKeyChoice的定义(您示例中的内部定义)似乎存在一个小问题\choice。解决方案跟踪的内部计数器没有针对正确解决方案进行升级。这意味着如果您有多个正确答案,则答案部分的键将被关闭。

我强烈建议您就此事联系软件包维护者。文档中可能会提到如何报告错误。(尽管考虑到软件包的最后一次真正更改是在 2001 年,因此进行重大修复的可能性可能比我最初想象的要小。开发人员的电子邮件地址在 PDF 文档中也看不到,您必须.dtx直接转到源文件才能找到它。)

与此同时,这里有一个解决方法。我们只需要将移出条件\stepcounter{choice}。在原始定义中,计数器仅在(此处已删除)\else的分支中增加\if#1!,这意味着计数器只会针对错误答案增加,而不会针对正确答案增加。这意味着第 n 个正确答案的计数将偏离 n-1。

\documentclass[a4paper, 11pt]{examdesign}

\makeatletter
\renewcommand{\exam@ShortKeyChoice}[2][]{%
  \if#1!%
    \ifOneCorrectAnswerAlreadyGiven
    , (\alph{choice})
    \else
    \exam@MultipleChoiceShortKeyPrefix
    (\alph{choice})%
    \OneCorrectAnswerAlreadyGiventrue
    \fi
   \fi
  \stepcounter{choice}%
  \ignorespaces}
\makeatother

\class{Your Exam}
\Fullpages
\ContinuousNumbering
\DefineAnswerWrapper{}{}
\NumberOfVersions{1}
\ShortKey
\NoRearrange

\begin{document}
\begin{multiplechoice}[title={A title}]
These are meant to be multiple-choice questions, with multiple answers.

\begin{question}
  How many people live in Wales?
    \choice{Approximately 2,811,865.}
    \choice[!]{More than in most countries.}
    \choice{None.}
    \choice{Exactly seventeen.}
\end{question}

\begin{question}
  How many cows does it take to graze a field?
  \choice{One.}
  \choice[!]{Two.}
  \choice{Three.}
  \choice[!]{Four}
\end{question}
\end{multiplechoice}
\end{document}

2.(b)、(d)

相关内容