C# Academy · Lezione

Tipi numerici

int, double, decimal e altro.

Lezione 1 di 413 passaggi

Tipi numerici è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 4 lezioni in totale.

Perché i tipi numerici sono importanti

C# offre diversi tipi numerici, ognuno dei quali memorizza un intervallo di valori diverso e utilizza una quantità diversa di memoria.

Scegliere quello giusto mantiene i programmi corretti ed efficienti. Un numero intero, come il conteggio degli utenti, può essere memorizzato in un int; per un prezzo servono i decimali.

In questa lezione conoscerà i tipi interi, a virgola mobile e decimali.

Tipi interi

Gli interi memorizzano numeri senza parte frazionaria.

  • int — 32 bit, il valore predefinito più comune
  • long — 64 bit, per conteggi molto grandi
  • short e byte — intervalli più piccoli

Utilizzi int a meno che un valore non possa superare circa due miliardi.

int age = 30;
long population = 8000000000;
Console.WriteLine(age);
Console.WriteLine(population);

Intervalli degli interi

Ogni tipo intero ha valori minimo e massimo fissi. Può leggerli con int.MaxValue e costanti simili.

Superare il valore massimo causa un overflow, per cui il valore ricomincia ciclicamente senza alcun avviso.

Console.WriteLine(int.MinValue);
Console.WriteLine(int.MaxValue);
Console.WriteLine(long.MaxValue);

Virgola mobile: double

double è un tipo a virgola mobile a 64 bit per i numeri reali con valori decimali.

È il tipo predefinito per i letterali frazionari, quindi 3.14 è un double. È veloce e ottimo per la scienza e la grafica, ma memorizza i valori in modo approssimato.

double pi = 3.14159;
double half = 1.0 / 2.0;
Console.WriteLine(pi);
Console.WriteLine(half);

Virgola mobile: float

float è un tipo a virgola mobile a 32 bit. Utilizza metà della memoria di double, ma può contenere meno cifre.

Un letterale float richiede il suffisso f, come in 2.5f; in caso contrario, C# tratta il numero come un double.

float temperature = 21.5f;
float ratio = 0.1f;
Console.WriteLine(temperature);
Console.WriteLine(ratio);

Valori monetari precisi: decimal

decimal è un tipo a 128 bit progettato per i valori monetari e i decimali esatti. Evita i piccoli errori di arrotondamento di double.

Un letterale decimal utilizza il suffisso m, come in 9.99m. Lo utilizzi per prezzi, operazioni bancarie e contabilità.

decimal price = 9.99m;
decimal tax = 0.08m;
Console.WriteLine(price + price * tax);

double e decimal a confronto

Osservi come double possa produrre un risultato sorprendente mentre decimal rimane preciso.

Per questo il codice finanziario preferisce decimal, anche se è più lento di double.

double d = 0.1 + 0.2;
decimal m = 0.1m + 0.2m;
Console.WriteLine(d);
Console.WriteLine(m);

Inferenza del tipo con var

La parola chiave var consente al compilatore di dedurre il tipo dal valore a destra.

La variabile mantiene comunque un tipo fisso: var count = 5; crea un int. I suffissi determinano il tipo dei letterali frazionari.

var count = 5;
var pi = 3.14;
var price = 9.99m;
Console.WriteLine(count.GetType());
Console.WriteLine(price.GetType());

Separatori delle cifre

Per migliorare la leggibilità, può inserire caratteri di sottolineatura tra le cifre di qualsiasi letterale numerico. Il compilatore ignora questi caratteri.

In questo modo i numeri grandi diventano molto più facili da leggere a colpo d'occhio.

int million = 1_000_000;
long distance = 9_460_730_472_580_800;
Console.WriteLine(million);
Console.WriteLine(distance);

Valori speciali di double

double può rappresentare valori speciali: infinito positivo e negativo e NaN (not a number).

La divisione per zero con i double produce infinito invece di un errore, mentre la divisione intera per zero genera un'eccezione.

double inf = 1.0 / 0.0;
double nan = 0.0 / 0.0;
Console.WriteLine(inf);
Console.WriteLine(nan);

Scegliere il tipo corretto

Una guida rapida:

  • Numeri interi → int (oppure long se sono molto grandi)
  • Decimali scientifici o generici → double
  • Valori monetari e valori esatti → decimal

Una scelta corretta previene i bug dovuti all'overflow e gli errori di arrotondamento.

Verifica rapida

Verifichi la comprensione dei tipi numerici.

Riepilogo

Ha imparato i principali tipi numerici di C#: int e long per i numeri interi, double e float per i numeri a virgola mobile e decimal per i valori monetari esatti.

Ricordi i suffissi dei letterali: f per float, m per decimal e i caratteri di sottolineatura per migliorare la leggibilità. Scelga i tipi bilanciando intervallo, precisione e memoria.

Gratis per iniziare

Impara C# con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
93
Lezioni
346

Domande Frequenti

La lezione «Tipi numerici» è gratuita?

Sì — il testo completo di «Tipi numerici» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 4 lezioni in totale.

Cosa imparerò in «Tipi numerici»?

int, double, decimal e altro. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare C# Academy?

Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Tipi numerici»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione C# Academy?

Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Tipi numerici
  2. Aritmetica e precedenza
  3. La classe Math
  4. Convertire tra numeri
← Torna a C# Academy