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