Intanto non devi usare i

float

ma i

double

per i valori in virgola mobile. Se i double soffrono di problemi di arrotondamento, figurati i float. Quindi evitali.

Poi, mi dovresti dire a cosa dovrebbe servire il codice, che risultati ti aspetti e cosa, invece, ottieni.

P.S. Quando mostri del codice, usa gli appositi tag in modo che sia ben leggibile e venga mantenuta l'indentazione ...