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);
}

我只是在尝试对生成的数字进行数学运算时遇到了麻烦,比如获得平均值。我希望能够连续地将随机数相加,然后除以数字的计数,但我似乎不知道怎么做。