double in java

fBacciarelli

Nuovo Utente
7 Set 2004
1
0
0
se provate a far eseguire su un qualsiasi tool di sviluppo questo
semplice calcolo, troverete dei risultati un po' diversi dalla realtà, qualcuno mi sa spiegare dove sto sbagliando oppure c'è un reale motivo fisico per cui a me il risultato viene dato in
73135.20000000001 anzicchè in 73135.20???

double a = 29254.08d;
double b = 43881.12d;
System.out.println( a+b );

grazie a tutti
 
Quello che hai scritto,mi ricorda quello che mi hanno fatto studiare in Ingegneri Informatica!!!!

il double permette la virgola, mentre int, no!

quello che ti sputa fuori, se non ricordo male male, dovrebbe essere dato dall'istruzione float!!

Praticamente il double utilizza un numero di bit diversi! ovvero un tot per l'ntero e un tot per i numeri dopo la virgola!
Quindi quando calcoli, lui sputa fuori tutti i bit che sfrutta, e quelli vuoti li da come zeri! Cerca un'istruzione, che in scrittura tranci i bit che non servono, tipo il %g di C++.

Non so altro.... ciao.
 

Discussioni simili