Feedback

C# - Kaufmännisches Runden

Veröffentlicht von am 29.11.2006
(4 Bewertungen)
Rundet (kaufmännisch) d auf n Stellen hinter dem Komma
GFU-Schulungen  [Anzeige]

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

ASP.NET Core Server - Programmierung

In nur 3 Tagen lernen Sie, wie man mit ASP.NET Core und den Technologien MVC, Entity Framework, WebAPI und Razor professionelle Web-Anwendungs-Architekturen aufbaut. Diese Schulung ist der perfekte Einstieg, um datengetriebene und präsentations-orientierte Applikationen auf Basis der ASP.NET Core Plattform zu erstellen.

public double Runde(double d, int n) 
{
int buffer; 
// d = d * 1000 bei n = 2;
d *= Math.Pow (10, n+1); 
// in integer umwandeln 
buffer = Convert.ToInt32 (d); 
if (buffer % 10 >= 5) d = (Math.Ceiling(d/10)) / Math.Pow (10, n); 
else d = (Math.Floor(d/10)) / Math.Pow (10, n); 
return d; 
} 

Abgelegt unter Runden, kaufmännisch.

3 Kommentare zum Snippet

Rainbird schrieb am 08.12.2006:
Double ist für Geldbeträge ungeeignet (Fließkommatypen "rauschen"). Man sollte immer decimal verwenden!
Yellow schrieb am 10.12.2006:
Dieses Snippet ist für .NET 2.0 überflüssig. Seit .NET 2.0 gibt es eine Überladung, so dass das Framework das von Haus aus kann.

3,7 = Math.Round(Convert.ToDecimal("3,65"),1,MidpointRounding.AwayFromZero));

...wurde allerdings auch erst von BlackDragon darauf aufmerksam gemacht.

Aebi Michael schrieb am 25.09.2009:
Also im Compactframework gibt es die von Yellow beschriebene Funktion leider nicht.
Daher ist dieses Snipped keineswegs überflüssig.
 

Logge dich ein, um hier zu kommentieren!