Arrotondamento dei numeri

C#:
Arrotondamento dei numeri

Come fare:

Ecco il biglietto di andata e ritorno per arrotondare i numeri in C#:

using System;

public class EsempiDiArrotondamento
{
    public static void Main()
    {
        double numeroOriginale = 123.4567;

        // Arrotonda al numero intero più vicino
        double arrotondato = Math.Round(numeroOriginale);
        Console.WriteLine(arrotondato); // Output: 123

        // Specifica il numero di cifre decimali
        double arrotondatoDueCifreDecimali = Math.Round(numeroOriginale, 2);
        Console.WriteLine(arrotondatoDueCifreDecimali); // Output: 123.46

        // Arrotonda sempre per eccesso indipendentemente dalla cifra successiva
        double arrotondatoPerEccesso = Math.Ceiling(numeroOriginale);
        Console.WriteLine(arrotondatoPerEccesso); // Output: 124

        // Arrotonda sempre per difetto indipendentemente dalla cifra successiva
        double arrotondatoPerDifetto = Math.Floor(numeroOriginale);
        Console.WriteLine(arrotondatoPerDifetto); // Output: 123
    }
}

Approfondimento

Un tempo, arrotondare era uno stratagemma ovvio per ridurre i costi computazionali. Ogni ciclo contava, e tagliare i numeri risparmiava tempo prezioso. Avanzando fino al C# moderno, si tratta di gestire la famosa predisposizione di double e decimali agli errori di precisione e alle stranezze di visualizzazione.

Oltre a Math.Round, Math.Floor e Math.Ceiling, l’enumerazione MidpointRounding ci permette di decidere il destino di povere cifre in posizione mediana—è l’incrocio tra le regole bancarie e l’equità del parco giochi del “arrotonda per eccesso la metà”.

Per pubblici più esigenti, come applicazioni serie di matematica o finanza, abbiamo decimal al posto di double, riducendo il dramma dell’arrotondamento offrendo una precisione maggiore—meno arrotondamenti, meno problemi.

Vedi Anche