Modulo Operator

  • Themenstarter Themenstarter Samurai88
  • Beginndatum Beginndatum
S

Samurai88

Gast
Halloa!!!
wenn ich folgendes gegeben habe..
[Java]for (int i = 0; i < 20; i++) {
if (i % 10 == 0) {
wert = 0;
}
}[/Java]

Heisst das solange der rest 0 ist soll er die variable "wert" gleich null setzen. Wird immer der rest mit der Null verglichen?
was ist denn wenn i z.B. 6 ist.
 
Mach doch
Code:
System.out.println(6%10)
:bahnhof: Dann siehst du es selber
Und es sollte heißen "WENN" rest 0 ist, dann... (nicht solange)
Im Grunde heißt es: jeden 10. Schritt setzt du den
Code:
wert
auf 0
 
wenn
Code:
i == 6
, ergibt
Code:
i % 10 == 0
Code:
false
, weil 6 nicht durch 10 teilbar ist
 
Versuch es so - dann siehst du was abläuft.

Java:
	public static void main(String[] args) {
		int wert = -666;
		for (int i = 0; i < 20; i++) {
			wert = i;
			if (i % 10 == 0) {                      
				wert = 0;
			}
			System.out.println("i = " + i + ", i%10 = " + (i % 10) + ", wert = " + wert);
		}
	}

Ausgabe:
Code:
i = 0, i%10 = 0, wert = 0
i = 1, i%10 = 1, wert = 1
// Zeilen gelöscht
i = 9, i%10 = 9, wert = 9
i = 10, i%10 = 0, wert = 0
i = 11, i%10 = 1, wert = 11
// Zeilen gelöscht
i = 18, i%10 = 8, wert = 18
i = 19, i%10 = 9, wert = 19
 

Zurück
Oben