Int(Rnd*10)+10

来源:百度知道 编辑:UC知道 时间:2024/05/05 11:47:10
请给出具体解答,尤其是Rnd*10的范围
另一题。也是关于INT的。
下面程序的功能是产生10个小于100(不含100)的随即正整数,并统计其中5的倍数所占的比例,但程序不完整,请补充。
Sub PR()
Randomize
Dim a (10)
For j=1 to 10
a(i)=Int_______
If_______ Then k=k+1
Print a(j)
next j
print
print k/10
End sub
请解释整个程序。。。

rnd()函数的功能就是产生一个(0~1)之间的单精度随机数,故rnd()*10的范围为(0~10)之间的单精度随机数。
Sub PR()
Randomize
Dim a (10) '定义一个下标为0~10的数组
For j=1 to 10 '循环,将数组下标为1~10的元素赋值
a(j)=Int(Rnd()*100)'随机产生一个小于100的整数
If a(j) Mod 5 = 0 Then k=k+1 '判断,如果随机数能被5整除,记录
Print a(j) '输出随机数
next j
print
print k/10 '输出比例
End sub
其中第一个要填的空前面的a(i)应该改成a(j)

Rnd*10
rnd是【0,10)即包括0,但不包括10
所以rnd*10【0,100)即包括0,但不包括100
int(rnd*10)就是【0,99】的整数

后面的程序,就依此类推。

1.(rnd(1)*100)
2.a(i)mod 5==0
int 它的作用是取整!RND(1)所产生的数字是(0-1)之间的数字 ,所以乘以100,再一取整就是1-99的整数
a(i)mod 5==0就是求余,如果能求余能为0,就是5的倍数