Conversão de calculo no xcode

Oi gente, tudo bem?

Estou fazendo uma aplicação para ios usando o xcode e ainda estou aprendendo.
Estou querendo simplesmente imprimir um float, usando este codigo

[NSString stringWithFormat:@"%f", f]

Porém eu recebo os seguintes valores como resultado dependendo do valor de ‘f’

1.0300000
1.0000000
1.0471000

Mas se eu usar o seguinte codigo muda um pouco

[NSString stringWithFormat:@"%.2f", f]

Ai ele imprime os resultados dessa maneira

1.03 1.00 1.05Mas eu preciso do resultado dessa maneira

1.03 1 1.0471Alguém sabe como fazer isso?

cara eu n entendo nada de objc. mas tu pode fazer um cast pra inteiro e comparar com o float. se for igual tu imprime o inteiro, se nao o float

em java eu faria isso. ou conversao pra string

No java é tranquilo fazer isso com a classe BigDecimal, mas eu consegui resolver isso no objetive-c usando a classe NSDecimalNumber que é equivalente(na maioria do metodos) a classe BigDecimal do java, vlw

Isso parece saída do printf, você pode checar a definição em:

https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Strings/Articles/formatSpecifiers.html#//apple_ref/doc/uid/TP40004265

(dica: acho que é %g)