Integerdivision in C#

Division von Ganzzahlen

Bei dieser Division entsteht also immer ein Rest, welcher bei Ganzzahltypen aber nicht berücksichtigt wird. Dieser Rest wird überhaupt nicht berücksichtigt.

 

Dazu ein Beispiel:

Im folgenden Programm wird zwar die auszugebende Variable i als float deklariert, die Division findet aber von zwei Ganzzahlen statt. Das Ergebnis dieser Division ist 0. 0 wird in i gespeichert und ausgegeben.

float i;  //Deklaration einer Dezimalzahl vom Typ float

i = 1 / 2;  //Speichert das Ergebnis von 1/2 in i

Console.WriteLine("{0}", i);  //Ausgabe von i
Console.ReadLine();

 

Um ein korrektes Ergebnis zu erhalten, müssen wir wie im folgenden Beispiel "float erzwingen".

Das heißt, wir müssen einer Zahl mitteilen, dass sie vom Datentyp float ist. Dies geschieht durch Hinzufügen des Typsuffix ( f ).

float i;

i = 1 / 2f;  //zwingt 2 als float

Console.WriteLine("{0}", i);
Console.ReadLine();

 

Suffix Fließkommatyp
f oder F float
d oder D double
m oder M decimal

oder wir geben eine Zahl als Fließkommazahl vor.
Statt 2 z.B. 2.0

float i;

i = 1 / 2.0;  //zwingt 2.0 als float

Console.WriteLine("{0}", i);
Console.ReadLine();