// 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
- [RAP] ODATA V4 Service und Fiori Elements App implementieren
- [ABAP] Übernahme von Dokumenteninfosätzen beim Anlegen von Einkaufsbelegen unterdrücken
- [ABAP] OpenSQL: Stringfunktionen
- [ABAP] OpenSQL: NULL-Indicator zum Anzeigen von leeren Rückgabemengen
- [ABAP] OpenSQL: Set-Indicator für das Aktualisieren von Spalten
- [ABAP] Repository-Infosystem: Views zu Objekten
- [ABAP] SALV-Table – Gruppen für Spaltenvorrat im SALV-Layout
- [ABAP] Retourenumlagerungsbestellungen lesen
- [SAP] Fabrikkalender / Feiertagskalender einrichten
- [ABAP] ABAP2XLSX: CSV-Datei schreiben