Modulo mit negativen Zahlen
Hallo, ich müsste dringend wissen, wie man Modulo mit negativen Zahlen rechnet. Und zwar nicht, wie es vielleicht in manchen Programmiersprachen implementiert ist, sondern wie man es in richtigem Mathe macht (ich studiere Mathe an einer Uni).
Also: a mod b kann ich schon für den Fall, dass b > 0 und a < 0 (für a >= 0 natürlich auch). Z.B. -3 mod 4 ist ja 1, das weiß ich.
Was ich aber nicht kann, ist a mod b für b < 0. Wie sieht es da aus? Also was ist z.B. 3 mod -4 oder -5 mod -10 oder 5 mod -10? Und wie komme ich darauf?
Vielen Dank!
3 Antworten
-3 mod 4 ist ja 1
Wenn, dann ist 1 kongruent zu 3 mod 4. (Zeichen ≡)
a ≡ b mod c bedeutet: kc + a = b.
In dem Fall -1 * 4 + 1 = -3.
Anderes Beispiel: x ≡ 3 mod -4 ⇔ k * (-4) + x = 3. Das ist zum Beispiel erfüllt für k=-1 und x=-1 oder, da man gerne einen positiven Rest hat, k=0 und x=3: 3 ≡ 3 mod -4
Aah sehr gut, da scheint ja jemand Ahnung zu haben :) Vielen Dank, jetzt hab ich es verstanden!
a mod (-b) = (-a) mod b = (kb-a) (mod b) ; k so wählen, dass kb gerade größer als a ist.
Wie Suboptimierer, nur etwas kürzer: Du kannst das Vorzeichen vergessen, denn das ändert nur das Vorzeichen der (beliebigen) ganzen Zahl k der Kongruenz-Definition:
a mod b ≡ a mod (-b)