使用 exams2moodle 的多项选择题的下拉菜单

Dropdown menu for multiple-choice questions with exams2moodle

我使用 R/exams 中的 exams2moodle() 使用 Sweave (Rnw) 问题。一切正常,除非我尝试将下拉问题用于选择或选择问题。按照手册,我尝试使用选项 cloze_mchoice_display = "MULTICHOICE",但这不起作用。

我在下面包含了一个示例 Rnw 练习以及我的 R 代码。

\begin{question}
Which is a parameter?
\begin{answerlist}
\item population mean.
\item sample mean.
\item sample variance.
\item sample mode.
\item sample standard deviation.
\item population mode
\end{answerlist}
\end{question}

%% \expoints{5}
%% \extype{mchoice}
%% \exsolution{100001}
%% \exshuffle{5}

复制代码:

library("exams")
exams2moodle("cloze_dropdown.Rnw", n=3, name = "dropdown")
make_question_moodle(cloze_mchoice_display = "MULTICHOICE")

这里有几个问题:

  1. 如果您想设置 cloze_mchoice_display 选项,您需要通过

    exams2moodle(..., cloze = list(cloze_mchoice_display = "..."))
    

    在内部,这会调用 make_question_moodle() 代码。您不必自己这样做。

  2. 顾名思义,cloze_mchoice_display 仅用于完形填空练习中的 mchoice 元素(而不是独立的 mchoice 问题)。因此,在元信息中,您需要将 extype 标签设置为 cloze(而不是 mchoice),并另外将 exclozetype 标签设置为 mchoice。在 Rnw 练习中:

    \extype{cloze}
    \exclozetype{mchoice}
    
  3. 下拉菜单只允许您 select 一个单一的答案,所以这实际上是为选择题设计的(它实际上是完形填空问题中的默认设置)。因此,您只能对 mchoice 元素使用 MULTIRESPONSE 显示,而对 schoice 元素只能使用 MULTICHOICE 显示。

因此,您需要决定是否要:

  • 一道选择题。然后我会保留它在你的问题中的原样,但是你不能有下拉菜单。

  • 一个下拉菜单。然后你需要把它变成一个只有一个正确答案的选择题。如果填入完形填空,下拉菜单默认显示在 exams2moodle(...).

例如,当您使用下面的 Rnw 练习时,默认情况下您将在 Moodle 中获得一个下拉菜单。

<<echo=FALSE, results=hide>>=
stat <- sample(c("mean", "mode"), 1)
@

\begin{question}
Which is a parameter?
\begin{answerlist}
\item population \Sexpr{stat}.
\item sample mean.
\item sample variance.
\item sample mode.
\item sample standard deviation.
\end{answerlist}
\end{question}

%% \expoints{5}
%% \extype{cloze}
%% \exclozetype{schoice}
%% \exsolution{10000}
%% \exshuffle{5}