随机打乱多项选择题和选项

随机打乱多项选择题和选项

我有以下枚举列表

\begin{enumerate}
    \item question 1
    \begin{enumerate}
        \item option 1
        \item option 2
        \item option 3
        \item option 4
    \end{enumerate}

    \item question 2
    \begin{enumerate}
        \item option 1
        \item option 2
        \item option 3
        \item option 4
    \end{enumerate}
\end{enumerate}

我正在考虑将问题和选项的顺序都随机化。我尝试使用randomlist包,如果我只按如下方式打乱问题的顺序,它就会完美地工作:

\RandomEnumerateList
{question 1
\begin{enumerate}
    \item option 1
    \item option 2
    \item option 3
    \item option 4
\end{enumerate}
}
{question 2
\begin{enumerate}
    \item option 1
    \item option 2
    \item option 3
    \item option 4
\end{enumerate}
}

\RandomEnumerateList但是,当将另一个放入时,它似乎不起作用\RandomEnumerateList。有什么方法可以调整我当前的脚本以同时打乱问题和选项的顺序吗?

答案1

在对 randomlist 进行快速尝试后,我不知道是否可以使用它嵌套列表。以下是一个快速的概念验证使用 LuaLaTeX 来实现。复制后randenum.lua兰德努姆在您的项目目录中,以下内容document.tex应该会产生预期的结果:

\documentclass{scrartcl}

\usepackage{randenum}

\begin{document}

\begin{randenum}
    \item question 1
    \begin{randenum}
        \item option 1
        \item option 2
        \item option 3
        \item option 4
    \end{randenum}

    \item question 2
    \begin{randenum}
        \item option 1
        \item option 2
        \item option 3
        \item option 4
    \end{randenum}
\end{randenum}

\end{document}

然后编译使用 LuaLaTeXlualatex document

注意:我采取的方法有一些注意事项:

  • \begin{randenum}并且\end{randenum}必须在自己的线上;
  • randenum环境不能轻易地被包裹在另一个环境中。

相关内容