Heim > Backend-Entwicklung > C++ > Warum wird die Ganzzahldivision in C# abgerundet und wie kann ich dies verhindern?

Warum wird die Ganzzahldivision in C# abgerundet und wie kann ich dies verhindern?

Linda Hamilton
Freigeben: 2025-01-05 17:31:40
Original
675 Leute haben es durchsucht

Why Does C# Integer Division Round Down, and How Can I Prevent It?

Automatisches Abrunden der Division in C#: Verstehen und Vermeiden

Beim Durchführen einer Division in C# kann es zu unerwarteten Abrundungen der Ergebnisse kommen. Dieses Verhalten ergibt sich aus der Natur der Ganzzahldivision, bei der das Ergebnis auf die nächste ganze Zahl gekürzt wird.

Um dies zu veranschaulichen, betrachten Sie das folgende Beispiel:

double i;
i = 200 / 3;
Messagebox.Show(i.ToString());
Nach dem Login kopieren

Dieser Code zeigt ein Meldungsfeld an mit dem Wert „66“, was bedeutet, dass 200/3 auf 66 abgerundet wurde. Der tatsächliche Wert von 200/3 ist jedoch ungefähr 66,6666667.

Um dieses Abrunden zu vermeiden, muss man die Operanden vor der Division explizit in Gleitkommazahlen mit doppelter Genauigkeit umwandeln. Dies kann auf verschiedene Arten erreicht werden:

  1. Konstante umwandeln:
i = (double)200 / 3;
Nach dem Login kopieren
  1. Verwendung einer Dezimalzahl Literal:
i = 200.0 / 3;
Nach dem Login kopieren
  1. Anhängen des „d“-Suffixes an die Konstante:
i = 200d / 3;
Nach dem Login kopieren

Beliebiges von Diese Ansätze stellen sicher, dass eine doppelte Division durchgeführt wird und der Dezimalteil des Ergebnisses erhalten bleibt. Daher ist es wichtig, die Auswirkungen der Verwendung ganzzahliger Divisionen zu verstehen und geeignete Umwandlungstechniken anzuwenden, wenn es um Brüche geht.

Das obige ist der detaillierte Inhalt vonWarum wird die Ganzzahldivision in C# abgerundet und wie kann ich dies verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage