Code:
b = 220
x0 = -73
--------
x0 = 147
-73 mod 220 = 147 !
Dein Algorithmus arbeitet also korrekt.
Achso, jetzt müssen wir noch den Unterschied von
mod zu
rem erklären.
mod sollte nach der Reduktion eigentlich immer Zahlen liefern mit dem Vorzeichen des Modulis, mathematisch gesehen.
rem sollte so arbeiten wie es mod in Delphi macht. D.h. rem liefert das Vorzeichen der zu reduzierenden Zahl.
D.h. mathematisch gesehen arbeitet der mod Operator in Delphi falsch und müsste korrekter weise rem heissen.
Gruß Hagen