具有固定和预先指定数量的正确和错误答案的问题

Questions with a fixed and pre-specified number of true and false answers

我想使用 R/exams 程序包为 Moodle 测验创建多项选择题。但是,我不确定 R/exams 是否总是可以选择固定数量的正确项目。假设我们有以下项目的问题:

Answerlist
----------
* A (correct)
* B (correct)
* C (correct)
* D (incorrect)
* E (incorrect)
* F (incorrect)
* G (incorrect)
* H (incorrect)
* I (incorrect)

在这个例子中,我希望 R/exams 恰好选择 2 个正确答案和恰好 6 个错误答案。这可能吗?

是的,这是可能的,但您需要为此编写一些 R 代码。如果您只将 exshuffle 设置为 8,那么 R/exams 将采样 8 个项目,并且仅使用至少有一个 true 和至少一个 false 项目的限制。

如果想对采样做进一步的限制,一般可以通过写相应的R代码来实现。在这种特殊情况下,我会执行以下操作:

  • 样本 2 个正确的项目。
  • 样本 6 个正确项目。
  • 将所有内容放入 answerlist()
  • exshuffle 设置为 TRUE,这样 8 个选定的项目将被 R 重新排列一次。

相应的 Rmd 练习如下所示:

```{r, include = FALSE}
correct <- c(
  "A (correct)",
  "B (correct)",
  "C (correct)"
)
correct <- sample(correct, 2)

incorrect <- c(
  "D (incorrect)",
  "E (incorrect)",
  "F (incorrect)",
  "G (incorrect)",
  "H (incorrect)",
  "I (incorrect)"
)
incorrect <- sample(incorrect, 6)
```

Question
========

Please select the correct items.

```{r, echo = FALSE, results = "asis"}
answerlist(c(correct, incorrect), markup = "markdown")
```

Meta-information
================
exname: Custom item sampling
extype: mchoice
exsolution: 11000000
exshuffle: TRUE

这样设置后,还可以很容易地任意扩展初始correctincorrect项的列表。其余代码将始终确保您从 correct 项中得到 2 个,从 incorrect 项中得到 6 个。

这里没有什么是特定于 exams2moodle() 的,也就是说,您可以将此练习与任何 exams2xyz() 界面一起使用(exams2nops() 除外,它只支持最多包含 5 个项目的项目列表) .