Runden auf 0.05 (Schweizer Norm).
Die Funktion ist als Erweiterungsmethode auf dem Typ Decimal implementiert. Für kaufmännische Anwendungen sollte man Fliesskomma-Typen wie Double vermeiden und immer mit Decimal arbeiten.
Die Arbeitsweise der Funktion ist folgende:
0.325 ergibt 0.350.324 ergibt 0.30 und funktioniert auch mit negativen Zahlen.
Beispiel:
decimal d = 0.325;
Console.Write(d.SwissCommercialRound())
Ausgabe:
public static decimal SwissCommercialRound(this decimal input)
{
return Math.Round(input * 20.0M, MidpointRounding.AwayFromZero) * 0.05M;
}
4 Kommentare zum Snippet