表达式int(a+(b-a)*Rnd)所得到的整数范围是多少?希望高人能够指点,最好有过程

松甜恬0Je4ba
2011-07-12 · TA获得超过2.6万个赞
知道大有可为答主
回答量:7475
采纳率:100%
帮助的人:3415万
展开全部
首先要确定 Rnd的范围,其为[0,1)之间的一个随机数。
也就是说能取到0,但是取不到1.
那么 (b-a)*Rnd的范围为[0,b-a)
那么再加上一个a呢,范围为[a,b)
也就是能取到a,取不到b。
如果用int强制转换,那么其范围为 [a,b-1]之间的整数。
dennis_zyp
2011-07-12 · TA获得超过11.5万个赞
知道顶级答主
回答量:4万
采纳率:90%
帮助的人:2亿
展开全部
0=<rnd<1
所以最小为a,
最大为 a+b-a=b
因此范围就是[a]至[b]之间的整数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式