Yerf!
Beispiel:
-10, -370, -730 ist gleichbedeutend und soll 350 ergeben
370, 730, 1090 ist gleichbedeutend und soll 10 ergeben
Das ist aber kein normales Modulo...
Ich komme jetzt auf folgendes, ich glaube meine alte Lösung war noch etwas schlechter:
z = (x + 1440) - (((x + 1440) / y) * y) ergibt
...etwas anderes
Das sind 15 Takte ohne Klammern. Bei Klammern verhält sich der Compiler relativ undurchschaubar, das muß ich testen. Vermutlich sind es in Summe 18 Takte.
Bei der Geschwindigkeit für Multiplikation/Division dürfte das aber der schneller Weg sein, eine Schleife ist da sicherlich langsamer.
Daher hatte ich auf eine schnelle Lösung auf Bit-Ebene gehofft.
Auf Bit-Ebene kann man leider nur mit 2er-Potenzen hantieren...
Gruß,
Harlequin