Hi, i think this is a common and basic requirement for every developer in each field, to get the Random numbers in Array. I have made a function to simplify this logic in Objective C.
So here is the code if this
-(void) checkExistance:(int) max
{
int value = [self randomNumberFrom:0 to:max];//Modify according to minimum /maximum value in Array
int i = 0;
for (i = 0; i < [self.numbers count]; i++)
if ([[self.numbers objectAtIndex:i] integerValue] == value)
break;
if (i == [self.numbers count])
[self.numbers addObject:[NSNumber numberWithInt:value]];
if ([self.numbers count] != max)
[self checkExistance:max];
}
- (int) randomNumberFrom: (int) minValue to: (int) maxValue
{
int rangeValue = maxValue - minValue;
return (arc4random() % rangeValue) + minValue;
}
You just need to call checkExistance method with passing a maximum value in this. You can modify your code for minimum and maximum as well in this.
Now just call
[self checkExistance:6];
and you will see the result by following
for(int j = 0;j<self.numbers.count;j++)
{
NSLog(@" %@", [self.numbers objectAtIndex:j]);
}
No comments:
Post a Comment