大家帮忙分析一下这段代码的问题

PrivateSubForm_DblClick()Dimt%Dimw%Dims%Randomize'防止每次生出随机数一样t=Rnd*(190-150)+1'rnd()生... Private Sub Form_DblClick()
Dim t%
Dim w%
Dim s%
Randomize
'防止每次生出随机数一样
t = Rnd * (190 - 150) + 1
'rnd()生成[0,1)的随机数,int()是取整
w = Rnd * (80 - 45) + 1
s = Rnd * (100 - 0) + 1
If ((175 <= t) And (t <= 185) And (w < 56)) Or (s > 90) Then
Print ok
Else
Print no
End If
End Sub
显示出来的总是一个样
展开
 我来答
wu_kang_lin
2012-02-19 · TA获得超过170个赞
知道小有建树答主
回答量:490
采纳率:50%
帮助的人:314万
展开全部
为了生成某个范围内的随机整数,可使用公式 Int((上限- 下限+ 1) * Rnd + 下限)

(175 <= t) And (t <= 185) 这里你的意思应该是.
t要大于等于175 并且要小等于185 W 要小于56 或者 s 大于90
在看看你的随机数;t=rnd*(190-150)+1 上限是190 下限是 150 也就是只有40个数
在看100次的结果 200次中都没有一次达到你的要求.

第1次=34
第2次=7
第3次=35
第4次=3
第5次=12
第6次=3
第7次=25
第8次=35
第9次=3
第10次=19
第11次=20
第12次=8
第13次=14
第14次=6
第15次=12
第16次=24
第17次=4
第18次=18
第19次=1
第20次=32
第21次=23
第22次=38
第23次=41
第24次=25
第25次=39
第26次=13
第27次=11
第28次=35
第29次=18
第30次=22
第31次=1
第32次=26
第33次=8
第34次=7
第35次=23
第36次=35
第37次=4
第38次=4
第39次=15
第40次=2
第41次=7
第42次=15
第43次=13
第44次=10
第45次=31
第46次=14
第47次=15
第48次=16
第49次=25
第50次=4
第51次=15
第52次=33
第53次=14
第54次=3
第55次=4
第56次=39
第57次=8
第58次=37
第59次=25
第60次=17
第61次=37
第62次=27
第63次=35
第64次=10
第65次=40
第66次=8
第67次=19
第68次=14
第69次=5
第70次=26
第71次=33
第72次=17
第73次=36
第74次=24
第75次=15
第76次=33
第77次=31
第78次=40
第79次=12
第80次=36
第81次=10
第82次=27
第83次=10
第84次=21
第85次=14
第86次=35
第87次=18
第88次=31
第89次=11
第90次=10
第91次=2
第92次=2
第93次=18
第94次=38
第95次=26
第96次=13
第97次=24
第98次=40
第99次=10
第100次=21

你整个代码,随机数设定不合理.条件设定不合理. 没效率的代码
追问
那怎么设计才好呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式