У меня проблемы с передачей значения с плавающей точкой от одного объекта к другому. Похоже, что это хорошо в первом методе, но во втором его значение огромно. Я предполагаю, что это какая-то проблема с моей типизацией, потому что это то, что я понимаю, самые бедные Помощь очень ценится!
В моем игровом контроллере я делаю это:
float accuracy = (float)hitCount/(float)(hitCount+missCount);
NSLog(@"GameController - hits: %i misses: %i enemies: %i accuracy: %f", hitCount, missCount, escapedCount, accuracy);
[delegate postGameWithScore:roundScore andAccuracy:accuracy];
, который вызывает этот метод в делегате игрового контроллера:
-(void)postGameWithScore:(NSInteger)score andAccuracy:(float)accuracy {
cumulativeScore += score;
NSLog(@"GameMaster - score: %i accuracy %f",cumulativeScore, accuracy);
/* non relevant code clipped */
}
Выход:
GameController - hits: 14 misses: 54 enemies: 35 accuracy: 0.205882
GameMaster - score: 3800 accuracy 36893488147419103232.000000
Я не могу понять, почему accuracy
не правильно во втором NSLog.