> 数学 >
(5*Rnd+1)*Int(5*Rnd-1) 这个最后的范围为什么是-5~15?
人气:410 ℃ 时间:2020-04-06 12:28:58
解答
1.
Rnd产生大于等于0且小于1的随机小数,Int为取整数部分.
5*Rnd+1 即 产生大于等于1小于6的小数,

Int(5*Rnd-1) 产生 -1 到 3 的随机整数
所以结果为:
(-6,18)而非 [-5,15]
2.
如果是
Int(5*Rnd+1)* Int (5*Rnd-1) 则是 [-5,15]
5*Rnd+1 即 产生大于等于1小于6的小数
Int(5*Rnd+1) 取整 形成 1 到 5的随机整数

Int(5*Rnd-1) 产生 -1 到 3 的随机整数
所以结果为:
[-5,15]nt(5*Rnd-1) 产生 -1 到 3 的随机整数 为什么不是-1到5?是取 最小值 和最大值所以尽可能的小和大 -1到5中间不包括所有值 如果 Int(5*Rnd+1) 取 5Int(5*Rnd-1) 取 -1结果 就是-5就不在你的范围内了 如果 Int(5*Rnd+1) 取 4Int(5*Rnd-1) 取 2结果 就是8也不在你的范围内了
推荐
猜你喜欢
© 2024 79432.Com All Rights Reserved.
电脑版|手机版