Raccomandato, 2024

Scelta Del Redattore

Differenza tra galleggiante e doppio

Float e Double sono entrambi tipi di dati in virgola mobile. I numeri in virgola mobile sono i numeri reali che contengono una componente frazionaria. La differenza principale tra float e double è che il tipo float ha una memoria a 32 bit. D'altra parte, il doppio tipo ha una memoria a 64 bit. Ci sono alcune altre differenze tra float e double che sono discusse nella tabella di confronto riportata di seguito.

Grafico comparativo:

Base per il confrontoGalleggianteDoppio
PrecisioneSingola precisioneDoppia precisione.
bits32 bit.64 bit.
byte4 byte.8 byte.
Range approssimativoDa 1.4e-045 a 3.4e + 038Da 4.9e-324 a 1.8e + 308
Rappresentazione di bit1 bit rappresenta il bit di segno.
8 bit rappresentano l'esponente.
23 bit rappresentano la mantissa.
1 bit rappresenta il bit di segno.
11 bit rappresentano esponente.
52 bit rappresentano la mantissa.
PrecisioneMeno accurato.Più accurato.

Definizione di Float

Un tipo di dati float è uno dei tipi in virgola mobile. Il tipo di dati float ha una memoria a 32 bit (che è uguale a 4 byte) per la variabile di tipo float. Il tipo di dati float specifica una precisione singola. La rappresentazione di 32 bit in virgola mobile può essere spiegata come 1 bit è rappresentato come il bit di segno, 8 bit sono rappresentati come un esponente e 23 bit sono rappresentati come mantissa. L'intervallo massimo di un tipo float è 1.4e-045 to 3.4e + 038. Se confrontato con il tipo a virgola mobile a virgola mobile è meno preciso durante il calcolo matematico. Cerchiamo di capire float usando un esempio.

 #include #include int main () {float num1 = sqrt (64.23) cout << num1; } // output 8.00060 

Come nel codice precedente, è possibile osservare che a una variabile mobile num1 viene assegnato un valore che corrisponde alla funzione sqrt (), che restituisce la radice quadrata del valore passato a questa funzione. È possibile osservare che quando il valore in num1 viene stampato è vicino al valore esatto, ma non è accurato. Vediamo ora l'esempio qui sotto quando lo stesso programma viene eseguito usando double come datatype.

Definizione di Double

Double è il secondo tipo di datatype a virgola mobile. Un tipo di dati double ha una memoria a 64 bit (che è uguale a 8 byte) per una variabile di tipo double. Specifica la doppia precisione in quanto la sua dimensione è solo il doppio del galleggiante. La rappresentazione a 64 bit di tipo double può essere spiegata come 1 bit rappresenta il bit di segno, 11 bit rappresenta un esponente e i rimanenti 52 bit rappresentano la mantissa. Tra float e double il tipo di dati più comunemente usato è double. Il tipo double viene utilizzato durante il calcolo matematico e quando è necessaria una precisione perfetta. Le funzioni matematiche sin (), cos () e sqrt () restituiscono sempre un doppio valore. Cerchiamo di capire l'esattezza del doppio tipo di dati con un esempio.

 #include #include int main () {double num1 = sqrt (64.23) cout << num1; } // output 8.0143621 

Si può osservare che l'output ottenuto nell'esempio, spiegando il float, è diverso dall'output ottenuto nell'esempio, spiegando il doppio. Quindi, da questo, possiamo dire che i risultati ottenuti dal doppio sono più accurati rispetto al float.

Differenze chiave tra galleggiante e doppio

  1. Il tipo di dati float specifica una precisione singola che significa che rispetto al doppio ha meno precisione mentre, il doppio specifica la doppia precisione poiché è solo il doppio di float, il suo errore è trascurabile rispetto al float.
  2. Una variabile di tipo float ha una memoria di 32 bit mentre, una variabile di tipo double ha una memoria di 64 bit che compila che il doppio è maggiore nella memoria rispetto al float.
  3. Il valore in float può variare da 1, 4e-045 a 3, 4e + 038, mentre il valore di tipo double può variare da 4, 9 a 324 e 1, 88 + 308.
  4. La rappresentazione dei bit di un valore float è simile a quella di 1 bit di float per il bit di bit, gli 8 bit per l'esponente e 23 bit per la memorizzazione della mantissa. D'altra parte, un doppio valore ricorda che 1 bit di esso è usato per il bit di sing, gli 11 bit per l'esponente e 52 bit per la memorizzazione della mantissa.
  5. Se confrontato con il doppio float è meno preciso da qui, mentre viene usato il calcolo matematico double.

Conclusione:

Bene, devi generalmente usare il doppio in quanto fornisce la precisione che è la nostra moto principale il più delle volte.

Top