Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Lavorare con i Numeri in Virgola Mobile | Tipi di Dati Numerici
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
Tipi di Dati in C++

bookLavorare con i Numeri in Virgola Mobile

Scorri per mostrare il menu

I numeri non si limitano agli interi. Esistono anche i numeri in virgola mobile. In C++, utilizziamo i tipi di dato float e double per memorizzarli. Questo capitolo tratterà il tipo di dato float, mentre il prossimo affronterà il tipo di dato double e le sue differenze. Di seguito è riportata la sintassi per l'utilizzo di float:

float.h

float.h

copy
1
float num = 0.45;

Esaminiamo brevemente come i numeri in virgola mobile vengono memorizzati in memoria.
Il tipo di dato float occupa 4 byte di memoria, proprio come un int. Tuttavia, la conversione di tali numeri in codice binario è molto più complessa:

Ecco un esempio di come float num = 13.45 verrebbe memorizzato:

Va bene se non si comprende completamente cosa sta succedendo qui. La cosa importante da notare è che la rappresentazione di un float è suddivisa in 3 parti:

  • la componente segno è rappresentata da un simbolo più (+) o meno (-). Indica se un numero è positivo o negativo;

  • la componente esponente determina l'intervallo che un numero può rappresentare. Più grande è l'esponente, più ampio è l'intervallo di valori rappresentabili. Per il tipo di dato float, l'esponente occupa 1 byte (8 bit) di memoria;

  • la componente mantissa determina la precisione di un float. Non tutti i numeri possono essere rappresentati esattamente in memoria e la precisione di un numero è definita dalla lunghezza della mantissa. Per il tipo di dato float, la lunghezza della mantissa è di 23 bit.

Di conseguenza, float ha una precisione di 7 cifre decimali e un intervallo da 1.2e-38 a 3.4e+38 (valido sia per numeri negativi che positivi). Quindi, nella maggior parte dei casi, l'intervallo non rappresenta un problema. Tuttavia, la precisione a volte lo è.

question mark

Qual è il numero massimo di cifre decimali che un float può rappresentare accuratamente?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 2. Capitolo 4
some-alt