【发布时间】:2009-05-20 10:40:14
【问题描述】:
我有一个由两个浮点数组成的区间,并且需要生成 20 个随机数,它们位于两个浮点数定义的区间之间。
比如说:
float a = 12.49953f
float b = 39.11234f
float r = //best way to get best randomly numbers between a and b
随机数可能是 == a 和 == b。你有什么建议?我知道所有的计算机和语言都有随机数的问题,并且有很多方法可以生成它们。但我对目标 c 没有经验。
在循环中生成的一组 20 个数字中生成的数字不相同,这一点非常重要。我想为此我会创建一个方法,将数字放入数组中并检查生成的数字是否与数组中的所有其他数字不同,如果没有,我会生成另一个。
我试过了:
CGFloat r = 1 + arc4random() % 5;
但这只会生成整数,而且大多数时候我会得到2倍的相同随机数。
【问题讨论】:
标签: iphone objective-c cocoa-touch