永发信息网

vb产生两个数之间的随机数闭区间

答案:4  悬赏:30  手机版
解决时间 2021-11-12 01:41
vb产生两个数之间的随机数闭区间
最佳答案
1、设置随机产生[n,m]之间的随机数(m>n),最小的随机数是n,然后在n的基础上加上m-n的差值内的随机数就可以了;
2、随机数代码是int(rnd*(m-n))+n
3、产生两个数之间的随机数闭区间示例(以产生一个[10,90]之间的随机数为例):
Private Sub Command1_Click()
Dim n As Integer
Randomize
n = Int(Rnd * 90) + 10
Print n;
End Sub
全部回答

rnd*(b-a)+a

随机函数Rnd()会产生0到1之间的一个单精度的小数(这个数字不包括0和1)。因此,如果在精度上没有要求,可以简单的通过一个公式将其放大到任何一个你需要的区间内。我们假设你的区间是(a, b),则公式是: r = Rnd()*(b-a)+b。但是这个是开区间的,两个端点不会被取到。

对于闭区间的问题,恐怕需要考虑进一步离散化这个随机取值。比如说,考虑你的区间内保留几位小数,我们假设是n,那么随机数可以做成: r = Int(Rnd()*((10^n)*(b-a)+1))/(10.0^n) + b。但是,这个n的取值不能太大,如果超过单精度的分辨率就失去意义了。一般4以下都应该没啥大问题。

说实在的,你的第二段话我没怎么看明白

我就按照标题帮助你一下吧,你想要一个有小数的随机数区间,其实并不难,只需要在你原来的代码上稍作改动就行,我们以5~10举例吧,如果你需要得到5~10之间省略到6位小数的随机数的话,代码如下:

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
全民惠农产品配送服务中心东区服务站NO.003在
2016年苏州市积分入户计分标准详情
优雅鲜花地址在什么地方,我要处理点事!
GT193OO三星
什么是领事裁判权(通俗易懂点的解释)
猪,猪啊是那首歌的歌词
柑橘中最好吃的是哪个品种?
英格莱国际洗衣(芙蓉世纪城店)地址在什么地方
拆除后在原地新建是否计算平整场地
车夫的人生经历
美国CAS国际洗衣会所地址在哪,我要去那里办
西红柿葱花鸡蛋饼怎么做好吃,西红柿葱花鸡
干了8年合同到期不续签
z133年后还会放票吗
济南章丘到临沂平邑的客车,有几班?什么时间
推荐资讯
有没有富人家儿子从家里偷跑出来 的耽美小说
石器时代assa外挂不显示人物状况
装电脑驱动用什么软件好
转铁球可以锻炼手臂肌肉吧。四斤六两的球
16和36的相同倍数中最小的是多少?
枯什么败什么,组一成语
K4223广州东到南昌的票价
谁会做黄焖鸡的酱料,跪求
我是一个初二的学生,体育很差,要怎么练
《平凡的世界》孙少平分析,我们应该从孙少平
买的起点站k934宜昌到广州的到松滋变成了k931
结合实际,试述泰勒科学管理理论的主要内容及
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?