我正在制作测验应用程序,我想在其中生成无重复的随机数。
我已经搜索了很多东西,并且有了主意,但是我认为我做错了什么,这就是为什么无法获得正确的输出。
这是我使用的代码。
-(int)generater{
NSMutableArray *temp;
srand([[NSDate date] timeIntervalSince1970]);
r = 1 + (arc4random() % 11);
if ([temp count] ==0) {
[temp addObject:[NSNumber numberWithInteger:questionnumber]];
return r;
}
if ([temp count] >= 1 ){
if (![temp containsObject:[NSNumber numberWithInteger:questionnumber]]) {
return r;
}
else{
int next=[self generater];
return next;
}
}
return r;
}
对于下一个问题,
-(void)askQuestion{
[self generater];
questionnumber = r;
NSInteger row = 0;
if(questionnumber == 1)
{
row = questionnumber - 1;
}
else
{
row = ((questionnumber - 1) * 11);
}
有人可以建议我我错了吗?
最佳答案
arryRandomNumber=[[NSMutableArray alloc]init];
while (arryRandomNumber.count<12) {
NSInteger randomNumber=1+arc4random()%12;
if (![arryRandomNumber containsObject:[NSString stringWithFormat:@"%d",randomNumber]]) {
[arryRandomNumber addObject:[NSString stringWithFormat:@"%d",randomNumber]];
}
continue;
}
NSLog(@"%@",arryRandomNumber);
关于iphone - 随机数,无重复,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10548002/