// NewSchool, mit .NET-Funktion
double x = Math.Round(1.56789, 2);
// Oldschool1
double y = RoundToQuick(-12345.6789, 3);
private double RoundToQuick(double z, int digits)
{
double p10 = Math.Pow(10.0, (double)digits);
return z >= 0.0 ? (int)(z * p10 + 0.5) / p10 : (int)(z * p10 - 0.5) / p10;
}
// Oldschool2
double z = RoundToFull(-12345.6789, 3);
private double RoundToFull(double z, int digits)
{
double p10 = Math.Pow(10.0, (double)digits);
return z >= 0.0 ? Math.Floor(z * p10 + 0.5) / p10 : Math.Ceiling(z * p10 - 0.5) / p10;
}
Kategorien
-
Neueste Beiträge
- [CDS-Views] Übersicht zu nützlichen CDS-Views
- [ABAP] Pivot-Darstellung von Feldwerten eines SELECT-Statements (STRING_AGG, substring_regexpr, RegEx, PCRE, UNION, COLLECT)
- [ABAP] Zu einem Datum spezielle Kalenderwerte ausgeben
- [SAP] Buchungsbelege
- Informatik
- KI
- [ABAP] SALV: Selektierte Zeilen (selected rows) eines SALV-Gitters auswerten
- [ABAP] SALV: Button-Separator in der SALV-Toolbar einfügen
- [ABAP] CDS-Views: Alle Spaltenbezeichner eines CDS-Views ausgeben
- [ABAP] User-Logondaten lesen