PaVi90
13-04-2008, 17:01
Ciao a tutti,
ho un problema nella gestione dei float.
In pratica ho n float da sommare tra loro, originariamente con una o due cifre decimali (quindi del tipo x.x o x.xx).
Quando sommo i numeri tra loro, perņ, noto una certa perdita di precisione, ed il risultato non "si contiene" a due cifre dopo la virgola ma va oltre (ad esempio il risultato dovrebbe venire 35.47 e invece mi ritrovo 35.46999996).
Come posso fare per approssimare anche il risultato a due cifre dopo la virgola?
Ho pensato di: moltiplicare il risultato per 100, aggiungergli 0,5 e castrarlo ad int, ed infine dividerlo per 100 riassegnandolo ad un float. Ma non funge (mi elimina le cifre decimali).
:help:
ho un problema nella gestione dei float.
In pratica ho n float da sommare tra loro, originariamente con una o due cifre decimali (quindi del tipo x.x o x.xx).
Quando sommo i numeri tra loro, perņ, noto una certa perdita di precisione, ed il risultato non "si contiene" a due cifre dopo la virgola ma va oltre (ad esempio il risultato dovrebbe venire 35.47 e invece mi ritrovo 35.46999996).
Come posso fare per approssimare anche il risultato a due cifre dopo la virgola?
Ho pensato di: moltiplicare il risultato per 100, aggiungergli 0,5 e castrarlo ad int, ed infine dividerlo per 100 riassegnandolo ad un float. Ma non funge (mi elimina le cifre decimali).
:help: