Objective c 如何每秒生成一个随机数并获得平均值?
我很难每秒获得一个随机数,并且记录它以及它的运行平均值 代码:Objective c 如何每秒生成一个随机数并获得平均值?,objective-c,Objective C,我很难每秒获得一个随机数,并且记录它以及它的运行平均值 代码: -(void)generateNumber:(NSTimer *)numberEachSecond { NSUInteger random = (arc4random() % 1000) +1; NSMutableArray *listOfNumbers = [[NSMutableArray alloc]init]; NSNumber *number = [NS
-(void)generateNumber:(NSTimer *)numberEachSecond
{
NSUInteger random = (arc4random() % 1000) +1;
NSMutableArray *listOfNumbers = [[NSMutableArray alloc]init];
NSNumber *number = [NSNumber numberWithInteger:random];
[listOfNumbers addObject:number];
// NSNumber *counter = 0;
for (NSNumber *generatedNumber in listOfNumbers)
{
NSLog(@"%@",generatedNumber);
}
NSLog(@"%@", listOfNumbers);
}
生成随机数的逻辑似乎很好,但不应该每次都将数组分配到该函数
generateNumber
,它应该是这样的
一次或需要时可能位于viewDidLoad
中的alloc数组
listOfNumbers = [[NSMutableArray alloc]init]; //listOfNumbers should be instance variable
-(void)generateNumber:(NSTimer *)numberEachSecond
{
NSUInteger random = (arc4random() % 1000) +1;
NSNumber *number = [NSNumber numberWithInteger:random];
[listOfNumbers addObject:number];
}
你可以在函数之外的任何地方使用它
NSLog(@"%@", listOfNumbers);
此代码将每秒生成一个随机数,并计算所有数字的平均值
生成 在
NSMutableArray *listOfNumbers;
整型
-(void)viewDidLoad{
listOfNumbers = [[NSMutableArray alloc]init];
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(generateNumber:) userInfo:nil repeats:YES];
}
-(void)generateNumber:(NSTimer *)numberEachSecond
{
NSUInteger random = (arc4random() % 1000) +1;
NSNumber *number = [NSNumber numberWithInteger:random];
[listOfNumbers addObject:number];
int total=0;
NSLog(@"%@",generatedNumber);
for (NSNumber *generatedNumber in listOfNumbers)
{
total=total + [generatedNumber intValue];
}
int average= total/[listOfNumbers count];
NSLog(@"average -- %d", average);
}
我只是在尝试对生成的数字进行数学运算时遇到了麻烦,比如获得平均值。我希望能够连续地将随机数相加,然后除以数字的计数,但我似乎不知道怎么做。