使用 rand 选项创建随机问题

使用 rand 选项创建随机问题

我想根据随机整数输入生成随机问题。我尝试过在线网站上的代码,并对其进行了调整,以便生成多个随机问题,但显然它不会生成随机问题。在枚举中,出现了相同的问题。任何对此事的见解都将不胜感激。

\documentclass[letterpaper]{article}
\usepackage{amsmath,amssymb,enumitem}
\usepackage{lcg,calc}
\usepackage{tikz}
\reinitrand[first=1, last=10, counter=num]  \rand
\reinitrand[first=2, last=20, counter=deno] \rand
\reinitrand[first=2, last=5, counter=coeff] \rand
\setcounter{num}{\value{coeff}*\value{num}} 
\setcounter{deno}{\value{coeff}*\value{deno}}
\newcommand{\fracquestion}[1]{%
\foreach \i in {1,...,#1}
{
\item $\dfrac{\thenum}{\thedeno}$
}}
\begin{document}
\begin{enumerate}
\fracquestion{5}
\end{enumerate}
\end{document}

答案1

如果你移动随机数生成代码\foreach并调整种子值,你会得到:

在此处输入图片描述

\documentclass[letterpaper]{article}
\usepackage{amsmath,amssymb,enumitem}
\usepackage{lcg,calc}
\usepackage{tikz}

\newcommand{\fracquestion}[1]{%
    \foreach \i in {1,...,#1}{%
      \reinitrand[first=\i, last=10, counter=num]  \rand
      \reinitrand[first=\i, last=20, counter=deno] \rand
      \reinitrand[first=\i, last=5, counter=coeff] \rand
      \setcounter{num}{\value{coeff}*\value{num}} 
      \setcounter{deno}{\value{coeff}*\value{deno}}
      \item $\dfrac{\thenum}{\thedeno}$
    }
}
\begin{document}
\begin{enumerate}
  \fracquestion{5}
\end{enumerate}
\end{document}

或者,您也可以使用 PGF 中已内置的随机数生成功能(包含在中tikz):

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{tikz}

\newcommand{\fracquestion}[1]{%
    \foreach \i in {1,...,#1}{%
      \item $\dfrac{\pgfmathparse{random(10)}\pgfmathresult}{\pgfmathparse{random(20)}\pgfmathresult}$%
    }
}
\begin{document}
\begin{enumerate}
  \fracquestion{5}
\end{enumerate}
\end{document}
\begin{document}

相关内容