発言者: 石原 守
発言日: 2006 11/30 20:46
今度は奥村先生の掲示板にも質問がでた乱数を使ってみようということで
整数のかけ算を例にしてみました。fp-random.styが必要です。
使用上の注意として,コンパイルするたびに問題が違うということと
fp-random.styの仕様(乱数の種)の関係で同じ年月日時分に
コンパイルすると同じ問題になるということです
気になる方は乱数の発生をperlに任せるということもできます。
\documentclass[a4j,twocolumn]{jarticle}
\usepackage{emathRn}
%\usepackage{emathW}
\pagestyle{empty}
\newif\ifkaitou
\makeatletter
\def\CAR#1#2{%
\edef\@kosuu{0}%
\@for\@c:=#1\do{%
\Incr\@kosuu
\ifnum\@kosuu=1
\edef#2{\@c}
\fi
}
}
\def\CDR#1#2{%
\edef\@kosuu{0}%
\@for\@c:=#1\do{%
\Incr\@kosuu
\ifnum\@kosuu=2
\edef#2{\@c}
\fi
\ifnum\@kosuu>2
\edef#2{#2,\@c}
\fi
}
}
\def\MonI{%
\CAR\kekka\@K% \K
\CDR\kekka\kekka% \kekka
\IMod\@K{89}\@K
\IAdd\@K{11}\@K
\CAR\kekka\@J% \J
\CDR\kekka\kekka% \kekka
\IMod\@J{7}\@J
\IAdd\@J{2}\@J
\IMod\@K{10}\@I
\ifnum\@I=0
\IAdd\@K{1}\@K
\fi
\IMod\@J{10}\@I
\ifnum\@I=0
\IAdd\@J{1}\@J
\fi
\IMul\@K\@J\@I
\ifkaitou
$\begin{array}[t]{lr}
& \@K \\
\times & \@J \\\hline
& \@I\\
\end{array}$
\else
$\begin{array}[t]{lr}
& \@K \\
\times & \@J \\\hline
\end{array}$
\fi
}
\makeatother
\setlength{\columnseprule}{0.4pt}
\begin{document}
\rndsuji[80][1000]\kekka
\twocolumn[{\Large \bf 2けたと1けたのかけ算}\hfill
\underline{\hspace{10truemm}}年\underline{\hspace{10truemm}}組\underline{\hspace{10truemm}}番 氏名\underline{\hspace{50truemm}}\vspace{1zh}]
\kaitoutrue
%\kaitoufalse
\begin{enumerate}
\item 次の計算をせよ。
\begin{enumerate}[(1)]
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\newpage
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\item\MonI
\vfill
\newpage
\end{enumerate}
\end{enumerate}
\end{document}
前回の三平方の定理と組み合わせることもできます
が辺の長さが1〜10くらいしか使えないのでおもしろくないと思います。
もうネタがない。いろいろなemathパッケージの活用法があったらお教えください。
▼関連発言
│
└◆169:emathRn.sty(乱数)を使ってみよう [石原 守] 11/30 20:46
├◆174:ふと思いついたのですが・・・ [dualignited] 12/01 21:00
│└◆175:Re:ふと思いついたのですが・・・ [田中徹] 12/01 21:35
│ └◆176:Re[2]:ふと思いついたのですが・・・ [dualiginited] 12/01 23:51
│ └◆177:Re[3]:ふと思いついたのですが・・・ [石原 守] 12/02 06:56
└◆178:Re:emathRn.sty(乱数)を使ってみよう [石原 守] 12/02 20:49<-last