В вашем коде то, что вы делаете здесь: for (NSNumber* row in array)
помещает каждый элемент array
в переменную row
(это называется перечисление массива btw).
Вам нужно использовать индекс массива, а не значение каждого элемента (это то, что вы делаете выше).
Кроме того, выне нужно использовать объект (NSNumber *
) для ваших расчетов.Подойдет простой NSInteger.
Вот код:
NSMutableArray *array = [NSMutableArray arrayWithObjects:[NSMutableArray arrayWithObjects:@1,@2,@3,nil],
[NSMutableArray arrayWithObjects:@4,@5,@6,nil],
[NSMutableArray arrayWithObjects:@9,@8,@9,nil],nil];
NSInteger total = 0;
for (NSUInteger row = 0; row < array.count; row ++) {
total = total + [array[row][row] integerValue]; // integerValue converts the NSNumber to an NSInteger
}
NSLog(@"%d",total);