dim aaa,sss
'        Randomize 
'        aaa= Int(3*Rnd)+1  
'        if aaa=1 then
'            sss=15
'        elseif aaa=2 then
'            sss=28
'        elseif aaa=3 then
'            sss=29
'        end if 
这里面为什么aaa只有1,2,3三个值啊

解决方案 »

  1.   

    Rnd 会有一个取值范围,如果只有3个值的范围就是3个值。你这里应该还有其他代码来获取这个值。
    光这里看不出来,也许它有很多个值。 你这里的if只是判断  aaa为1,2,3时候的情况。
      

  2.   

    因为rnd返回一个0~1之间的小数(不含1)。
    rnd * 3返回0~3之间的小数(不含3)。
    加上1返回1~4之间的小数(不含4)。
    对这个小数取整,就只能是1 2 3三个数字。
      

  3.   

      Rnd是介于(0,1)之间的,乘以3就在(0,3),然后再加1,就是[1,4)之间,注意看好,没有包括4,所以
    aaa只有三个值1,2,3
      

  4.   


    Rnd这个是原本就是介于(0,1)的,还是前面要给他赋值
      

  5.   

     这个你要查看帮助文档,查Rnd和Int这个函数。