PowerShell:
Zahlen runden

Wie:

Sie haben einige praktische Cmdlets und Methoden in PowerShell zum Runden:

  • Round()-Methode aus der Math-Klasse
[Math]::Round(15.68) # Rundet auf 16
  • Dezimalstellen angeben:
[Math]::Round(15.684, 2) # Rundet auf 15.68
  • Ceiling() und Floor(), für das stets Aufrunden oder Abrunden:
[Math]::Ceiling(15.2) # Rundet auf 16 auf
[Math]::Floor(15.9) # Rundet auf 15 ab

Tiefergehende Betrachtung

Das Runden von Zahlen ist kein Neuling; es gibt es seit der Antike, nützlich für Handel, Wissenschaft und Zeitmessung. Bezüglich PowerShell folgt [Math]::Round() standardmäßig dem “Banker’s Rounding”, bei dem 0,5 auf die nächstgelegene gerade Zahl geht, um Verzerrungen in statistischen Operationen zu reduzieren.

Sie sind allerdings nicht nur auf [Math] Methoden beschränkt. Mehr Kontrolle gefragt? Schauen Sie sich [System.Math]::Round(Number, Digits, MidpointRounding) an, wo Sie festlegen können, wie Mittelpunkte behandelt werden: weg von Null oder auf gerade (auch bekannt als Banker-Rounding).

Eine andere Perspektive: das System.Globalization.CultureInfo-Objekt. Es hilft bei der berücksichtigung von lokalen Formatierungs- und Rundungsvorlieben, wenn es um internationale Zahlen geht.

Siehe auch

  • Microsofts offizielle Dokumentation zu Math-Methoden: Link
  • Spezifika des Dezimalrundens in .NET: Link
  • Diskussionen über Rundungen auf StackOverflow: Link