Требуя много случайных чисел - PullRequest
3 голосов
/ 12 июня 2011

Я пытаюсь создать игру в стиле вдохновителя, чтобы развить свои навыки работы с iOS. Я пытаюсь создать 6 случайных чисел от 0 до 9, используя следующее. Я получаю разные числа при запуске в разное время, но все 6 чисел всегда одинаковы при каждом запуске.

NSNumber *n1 = [[NSNumber alloc]initWithInt:(random() % 10)];
NSNumber *n2 = [[NSNumber alloc]initWithInt:(random() % 10)];
NSNumber *n3 = [[NSNumber alloc]initWithInt:(random() % 10)];
NSNumber *n4 = [[NSNumber alloc]initWithInt:(random() % 10)];
NSNumber *n5 = [[NSNumber alloc]initWithInt:(random() % 10)];
NSNumber *n6 = [[NSNumber alloc]initWithInt:(random() % 10)];

Любая помощь будет очень полезна.

1 Ответ

6 голосов
/ 12 июня 2011

Скорее всего, вы забыли заполнить генератор случайных чисел (т.е. добавьте следующую строку перед генерацией случайных чисел):

srandom(time(NULL));

В любом случае, на iPhone вы должны использовать функцию arc4random () - она ​​обеспечивает гораздо лучшие результатыи не требует посева:

NSNumber *n1 = [[NSNumber alloc]initWithInt:(arc4random() % 10)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...