Правильным значением является отладчик. Вы можете увидеть это с упрощенной версией кода выше:
float test = 3.5999999;
NSLog (@"%f", test);
В этом случае вы получите те же результаты, что и упомянутые выше: в журнале указано 3.600000, а в отладчике - 3.5999999. Во всех случаях отладчик имеет значение коррекции по сравнению с NSLog. Когда мы копаем немного глубже, мы видим, что NSLog слегка массирует значение с плавающей точкой.
На самом деле - вам, вероятно, следует использовать здесь двойное значение для поддержания точности, которую вы ищете.