我想生成两个不同的 15 位随机数。我怎样才能做到这一点
谢谢
试试这个::
arc4random() 是标准的 Objective-C 随机数生成器函数。它会给你一个介于零和......嗯,超过十五个之间的数字!您可以生成 0 到 15 之间的数字(因此,0、1、2、... 15): 6 位随机数将是:
int number = arc4random_uniform(900000) + 100000;
它将给出从 100000 到 899999 的随机数。
希望能帮助到你!!
大多数随机数生成函数,例如arc4random
仅生成范围内的数字0 .. 2^32-1 = 2147483647
。对于 15 位十进制数,您可以计算范围内的 3 个数字0 .. 10^5-1
并“连接”它们:
uint64_t n1 = arc4random_uniform(100000); // 0 .. 99999
uint64_t n2 = arc4random_uniform(100000);
uint64_t n3 = arc4random_uniform(100000);
uint64_t number = ((n1 * 100000ULL) + n2) * 100000ULL + n3; // 0 .. 999999999999999
或者,如果您需要15位数字:
uint64_t n1 = 10000 + arc4random_uniform(90000); // 10000 .. 99999
uint64_t n2 = arc4random_uniform(100000); // 0 .. 99999
uint64_t n3 = arc4random_uniform(100000); // 0 .. 99999
uint64_t number = ((n1 * 100000ULL) + n2) * 100000ULL + n3;
使用arc4random()
您可以实现的功能来生成随机数。
这是一个链接,可以让您很好地了解arc4random()
.
希望这会有所帮助