一个VB编程的实例没有看懂,请各位VB高手指点一下!

来源:百度知道 编辑:UC知道 时间:2024/05/13 06:45:23
实例是求N!的值,编程命令如下:
private sub text1_change()
dim i,k,p as integer
dim sum1,sum2 as double
sum1=1#
for i=1 to int(text1.text)
sum1=sum*i
next i
text2.text=str$(sum1)
sum2=0#
for i=1 to int(text1.text)
p=1
for k=1 to i
p=p*k
next k
sum2=sum2+p
next i
text3.text=str$(sum2)
end sub
我没明白chang()是什么意思? sum1=sum1*i是什么意思?

还有一个是在文本框中随机产生1至7之间的数,命令为
text1.text=str$(int(rnd()*7+1))中的rnd()*7+1是什么意思?为什么加1呀?
请各位高手指点一下VB只有一天半学龄的菜鸟,谢谢!

chang()大概是你自己编的函数,sum1=sum1*i就是把sum1×i的值赋给原数sum1,rnd函数就是在0到1之间的随机数,是小数,乘7取整后必然是0到6的随机数,所以要加一。

text1_change是一个事件,在text1的内容发生改变时触发

rnd()是产生随机数的函数,说明如下:
Rnd 函数返回小于 1 但大于或等于 0 的值。
为了生成某个范围内的随机整数,可使用以下公式:

Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。

rnd()函数产生个0到1之间的随即小数
rnd()*7就是产生0到7之间的数‘有小数也有整数
int(rnd()*7)就是取整意思就是0 到6之间的整数了(包括0和6)