在vfp中,怎么产生真正的随机数?
来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/08 17:50:47
在vfp中,怎么产生真正的随机数?
在vfp中,用rand()产生的随机数每次都是固定的,不是真正的随机数.然后我在网上学到一个程序nrand(),以当前秒数为因子,产生一个随机数.
但是现在有一个问题,我每次要同时产生5个随机数,可是由于是以秒为因子,所以瞬间内产生的5个随机数是一样的,比如4,4,4,4,4.或者就是相差1,比如3,3,3,4,4.
这样就不能产生一个真正的随机数,谁能帮我呢?非专业勿扰!
在vfp中,用rand()产生的随机数每次都是固定的,不是真正的随机数.然后我在网上学到一个程序nrand(),以当前秒数为因子,产生一个随机数.
但是现在有一个问题,我每次要同时产生5个随机数,可是由于是以秒为因子,所以瞬间内产生的5个随机数是一样的,比如4,4,4,4,4.或者就是相差1,比如3,3,3,4,4.
这样就不能产生一个真正的随机数,谁能帮我呢?非专业勿扰!
这里提供2种方法供你参考,其实原理都是每次让rand函数种子值变化.
方法一:显示1 到 10 之间的一个随机数:这是VFP帮助文档中的,有空应该多看看帮助.
CLEAR
LIST && 显示值
gnMaximum = 1 && 初始化最小值
gnMinimum = 100 && 初始化最大值
SCAN
gnMinimum = MIN(gnMinimum, cValue)
gnMaximum = MAX(gnMaximum, cValue)
ENDSCAN
? '最小值是: ', gnMinimum && 显示最小值
? '最大值是: ', gnMaximum && 显示最大值
CLEAR
gnLower = 1
gnUpper = 10
? INT((gnUpper - gnLower + 1) * RAND() + gnLower)
方法二:
建立一个资源表,然后从资源表中选rand函数的种子产生随便机数,用过的资源就删除.
方法一:显示1 到 10 之间的一个随机数:这是VFP帮助文档中的,有空应该多看看帮助.
CLEAR
LIST && 显示值
gnMaximum = 1 && 初始化最小值
gnMinimum = 100 && 初始化最大值
SCAN
gnMinimum = MIN(gnMinimum, cValue)
gnMaximum = MAX(gnMaximum, cValue)
ENDSCAN
? '最小值是: ', gnMinimum && 显示最小值
? '最大值是: ', gnMaximum && 显示最大值
CLEAR
gnLower = 1
gnUpper = 10
? INT((gnUpper - gnLower + 1) * RAND() + gnLower)
方法二:
建立一个资源表,然后从资源表中选rand函数的种子产生随便机数,用过的资源就删除.
C语言如何产生真正的随机数
编程中怎么产生随机数?
java中怎么让随机数产生在一个区间段?
在java中怎么产生不重复的随机数,用for写出
MFC中产生随机数MFC中随机产生20-40之间含有单位的随机数,使这些随机数之间的差不超过1,这些随机数分别在stat
C++中怎么产生一个任意位数的随机数?
怎么在计算器上产生随机数的具体步骤
怎样在Excel 中产生(0,1)的随机数,
如何在excel中对产生的随机数精确到后两位
excel如何在指定的数据中产生随机数
在EXCEL中,根据平均数产生几个随机数,要求产生的随机数在平均值的基础上正态分布.举例:平均值为80,产生8个随机数,
excel高手请进,excel中rand函数产生的0到9的随机数列是真正的随机数吗?