


Warum wird die C#-Ganzzahldivision abgerundet und wie kann ich sie vermeiden?
Jan 05, 2025 pm 06:24 PMDivisionsabrundung in C#
Bei der Division in C# können Programmierer auf unerwartetes Abrundungsverhalten stoßen. Dieses Problem tritt auf, wenn eine ganzzahlige Division durchgeführt wird, was zum Verlust von Bruchteilen führt.
Betrachten Sie zur Veranschaulichung den folgenden Code:
double i; i = 200 / 3; // Integer division MessageBox.Show(i.ToString());
Dieser Code zeigt ein Meldungsfeld mit dem Wert an „66“. Das erwartete Ergebnis für 200 / 3 sollte jedoch 66,66666 sein...
Lösung: Doppelte Division verwenden
Um dieses Abrunden zu vermeiden und die Gleitkommagenauigkeit beizubehalten, Man sollte die Doppeldivision anstelle der Ganzzahldivision verwenden. Dies kann erreicht werden durch:
- Konvertieren eines der Operanden in ein Double:
i = (double)200 / 3;
- Verwenden eines nachgestellten Dezimalpunkts in einem Operanden:
i = 200.0 / 3;
- Anhängen des d-Suffixes an eins Operand:
i = 200d / 3;
Durch die Verwendung der Doppeldivision führt der Divisionsoperator / eine Gleitkommadivision durch und behält dabei alle signifikanten Ziffern bei.
Das obige ist der detaillierte Inhalt vonWarum wird die C#-Ganzzahldivision abgerundet und wie kann ich sie vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

C Sprachfunktionsformat -Buchstaben -Fall -Konvertierungsschritte

Welche Werte sind von C -Sprachfunktionen zurückgegeben? Was bestimmt den Rückgabewert?

GULC: C -Bibliothek von Grund auf neu gebaut

Was sind die Definitionen und Aufrufregeln von C -Sprachfunktionen und was sind die?

Wie funktioniert die C -Standard -Vorlagenbibliothek (STL)?

Wo ist der Rückgabewert der C -Sprachfunktion im Speicher?

eindeutiger Gebrauch und Phrasenfreigabe

Wie benutze ich Algorithmen aus der STL (sortieren, finden, transformieren usw.) effizient?
