Я работаю над Objective C и пытаюсь вывести правильный индекс массива из двух измерений.
Для этого у меня есть несколько кнопок, на которых установлен тег, объединяющий два индекса водин номер.Например, позиция 1,1 в массиве приводит к тегу = 11.
После этого, чтобы объединить два компонента индекса, я использую следующий код:
float tag = (float)[sender tag];
float x = [[NSString stringWithFormat:@"%.2f", tag / 10.f] floatValue];
//float x = (float)tag / 10.f;
int y = floor (x);
int z = (x - y) * 10;
Теория работает отлично, но я удивляюсь, когда получаю следующие результаты:
tag = 23 x = 2,29999995 вместо ожидаемого результата 2,3 (23/10 = 2,3, а не 2,2999995)!
Я тоже пытался с двойной и несколькими операциями без успеха.
Кто-нибудь знает, что я делаю неправильно?
Спасибо.