(5*Rnd+1)*Int(5*Rnd-1) 这个最后的范围为什么是-5~15?
1个回答
展开全部
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]
希望对你有帮助
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) 取 5
Int(5*Rnd-1) 取 -1
结果
就是-5 就不在你的范围内了
如果
Int(5*Rnd+1) 取 4
Int(5*Rnd-1) 取 2结果
就是8 也不在你的范围内了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询