VB int函数的用法

 我来答
声平晓丁维
2019-01-03 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:676万
展开全部
你好!刚刚看到你的留言。希望没有耽误你。
好吧,我们来看你写出来的函数:int(9-0+1)*rnd+0
它的作用是一个产生随机数。
一、我们分析一下它的结构和它的最终作用:
它一共由三部分组成:
int(9-0+1)——它是一个取整函数int(x),即求不大于x的最大整数。在本例中,自变量x被一个计算式取代:9-0+1,它是一个恒定值10。所以这一部分相当于int(10)=10,是一个恒定不变的量。
rnd——是产生随机数的函数rnd(x)的简写形式。它产生一个介于[0,1)之间的小数。
+0
——毫无疑问,这一步对于程序运行毫无意义,但是既然编写程序的人员写上,则有它的原因,留在下面分析。在分析程序运行时,当成没有这一项就可以了。
现在综合来看它的作用:int(9-0+1)*rnd+0相当于:10*rnd=10*[0,1)=[0,10),它的最终目的是产生一个介于0到9.9999999之间(包括两头)的小数。
二、再看看这一句里边冗余内容及分析:
刚才说的+0,以及9-0+1这两个问题不算是无意义内容,等后面仔细分析。真正无意义的是int()函数的使用,这个地方,int(9-0+1)=(9-0+1),两者完全相等,所以说int是冗余的。
int()函数是个取整函数,如果要产生小数是不需要int()的(这句话仅限于此处使用),我的分析应该是作者想产生0到9的整数,而不是像第一步分析的那样产生小数。这样的话,int()是用错了地方。
三、产生0-9整数随机数的正确语句:
完整的语句应该是int(rnd*(9-0+1)+0),你会说这一句跟int(rnd*10)相当,是的。原因下面分析。
四、为什么要写+0:
一般地,在vb中,要产生m-n之间的随机整数(包括m和n且
评论
0
0
加载更多
衅悦远揭勤
2019-03-04 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:26%
帮助的人:700万
展开全部
如果D1
>
D2,DD=Int(Rnd
*
(D1
-
D2
+
1))
+
D2,否则DD=
Int(Rnd
*
(D2
-
D1
+
1))
+
D1)
int是取整的意思。去掉小数部分。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式