C#:
Zahlen runden

Wie:

Hier ist Ihr Rundreiseticket für das Runden von Zahlen in C#:

using System;

public class RoundingExamples
{
    public static void Main()
    {
        double originalNumber = 123.4567;

        // Auf nächste ganze Zahl runden
        double rounded = Math.Round(originalNumber);
        Console.WriteLine(rounded); // Ausgabe: 123

        // Anzahl der Dezimalstellen angeben
        double roundedTwoDecimalPlaces = Math.Round(originalNumber, 2);
        Console.WriteLine(roundedTwoDecimalPlaces); // Ausgabe: 123.46

        // Unabhängig von der nächsten Ziffer aufrunden
        double roundedUp = Math.Ceiling(originalNumber);
        Console.WriteLine(roundedUp); // Ausgabe: 124

        // Unabhängig von der nächsten Ziffer abrunden
        double roundedDown = Math.Floor(originalNumber);
        Console.WriteLine(roundedDown); // Ausgabe: 123
    }
}

Vertiefung

Früher war das Runden ein Kinderspiel zur Reduzierung der Rechenkosten. Jeder Zyklus zählte, und das Kürzen von Zahlen sparte kostbare Zeit. Springen wir in die moderne Welt von C#, geht es um das Management des berüchtigten Hangs von Doubles und Decimals zu Präzisionsfehlern und Darstellungsproblemen.

Über Math.Round, Math.Floor und Math.Ceiling hinaus ermöglicht uns das Enum MidpointRounding das Schicksal von armen, mittig sitzenden Ziffern zu bestimmen – es ist der Scheideweg zwischen Bankregeln und der Spielplatzgerechtigkeit des „Aufrunden zur Hälfte“.

Für härtere Fälle, wie ernsthafte Mathematik- oder Finanzanwendungen, haben wir decimal statt double, was das Rundungsdrama durch eine höhere Präzision minimiert – weniger Rundungen, weniger Probleme.

Siehe auch