我正在使用该包麦克萨姆建立包含随机多项选择题和随机答案的测试。
该包的使用方法如下:
\usepackage[output=exam, numberofversions=58, version=26, randomizequestions=true,randomizeanswers=true]{mcexam}
其中numberofversions
我使用选项设置随机测试的次数,并使用选项version
将第 26 个版本打印为 pdf 输出。
我想问一下,是否可以在同一个输出 PDF 中打印更多版本(例如从 1 到 25),而不必每次都更改版本号来创建不同的输出。谢谢
答案1
使用 可以轻松实现这一点\foreach
。但必须小心谨慎,以确保您不会进行重复测试。
随机化表由环境生成mcquestions
,也就是说,每次循环都会有所不同。因此测试看起来是随机的,但最终可能会出现重复。
为了防止这种情况,seed
必须在环境之前将其设置为常数值mcquestions
,并且version
必须在每个循环中增加。
填筑由\foreach
和完成,version
并由seed
设定\setkeys
。
以下是代码:
\documentclass[a4paper]{article}
\usepackage[output=exam, numberofversions=58, randomizequestions=true,randomizeanswers=true]{mcexam}
\begin{document}
\foreach \i in {1,...,25}{
\newpage
\setkeys{mcexam.sty}{version=\i,seed=123}
\begin{mcquestions}
\question How much is $2+2$?
\begin{mcanswerslist}
\answer two
\answer[correct] four
\answer five
\end{mcanswerslist}
\question How much is $5-3$?
\begin{mcanswerslist}
\answer 1
\answer[correct] 2
\answer 3
\end{mcanswerslist}
\question How much is $0 \times 2$?
\begin{mcanswerslist}[fixlast]
\answer 1
\answer 2
\answer[correct] none of the above
\end{mcanswerslist}
\end{mcquestions}
}
\end{document}
哦,下次请提供一个最小工作示例(MWE)。