Can I set a range of numbers when using arc4random()? For example 50-100 only.
As pointed out in other posts below, it is better to use arc4random_uniform
. (When this answer was originally written, arc4random_uniform
was not available). Besides avoiding the modulo bias of arc4random() % x
, it also avoids a seeding problem with arc4random
when used recursively in short timeframes.
arc4random_uniform(4)
will generate 0, 1, 2 or 3. Thus you could use:
arc4random_uniform(51)
and merely add 50 to the result to get a range between 50 & 100 (inclusive).