首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

rand5发生rand7

2013-09-28 
rand5产生rand7以下的randN代表随机产生0~N的数,每个数出现的概率相等。从rand7产生rand5比较简单,当rand7

rand5产生rand7

以下的randN代表随机产生0~N的数,每个数出现的概率相等。

从rand7产生rand5比较简单,当rand7得到6或者7时再次运行rand7,直到小于6时输出。

但是从rand5产生rand7就没有这么方便了。

可以考虑rand5产生更大的rand。

考虑另一个问题,如果有个rand9的程序,要随机产生0~999的数,这时思路很清晰,先rand百位,然后rand十位,然后rand个位。这样得到得数的概率都相同。

此时就可以联想到rand5产生一个6进制的2位数,即rand5 * 6 + rand5,得到rand35,然后就容易得到rand7了。

热点排行