2

exams考虑使用R 中的包创建考试。

使用时exams2nops有一个参数showpoints,设置为时TRUE会显示每个练习的分数。但是,对于exams2pdf这个参数是不可用的。

使用时如何显示每次练习的积分exams2pdf

4

1 回答 1

3

(下面的答案改编自 R/exams 论坛https://R-Forge.R-project.org/forum/forum.php?thread_id=33884&forum_id=4377&group_id=1337。)

目前没有内置的解决方案可以自动显示exams2pdf(). 该points=参数仅存储创建的 R 对象中的点数exams2pdf()(如在其他exams2xyz()接口中),而不存储在单个 PDF 文件中。

因此,如果您希望显示这些点,您需要自己以某种方式进行。一个简单的解决方案是将其包含在单独的练习中,可能取决于所使用的界面类型,例如,类似这样的 .Rmd 练习:

pts <- 17
pts_string <- if(match_exams_call() == "exams2pdf") {
  sprintf("_(%s points)_", pts)
} else {
  ""
}

然后在“问题”的开头:

Question
========
`r pts_string` And here starts the question text...

最后在元信息中

expoints: `r pts`

这总是在元信息中包含所需的点,但仅在使用时在问题中显示它们exams2pdf(...)。这是非常灵活的,可以很容易地进一步定制。exams2pdf(..., points = ...)唯一的缺点是它对争论没有反应。

在 .Rnw 练习中,必须使用 .Rnw\Sexpr{...}而不是r .... 也pts_string应该是类似的东西sprintf("\\emph{(%s points)}", pts)

\newcommand最后,一个更精细的解决方案是在您使用的.tex模板中创建一个合适的。如果所有练习的分数相同,这并不难。但如果所有不同的练习都有不同的分数,那就需要更多的参与。

exams2nops()支持这一点但不支持的主要原因exams2pdf()是前者的格式和词汇量相当有限。然而,在后一种情况下,重点是让用户在布局、语言等方面拥有所有自由。因此,我没有看到一个足够简单但又足够灵活以涵盖exams2pdf().

于 2020-04-16T01:32:25.023 回答