Hallo,
du willst also wissen, wie oft du `verr` von zahl abziehen bzw. dazu addieren kannst, damit der Rest möglichst nahe an Null ist?
Python
>>> def calc_remainder(number, value):
... if number == 0:
... return 0
... elif number < 0:
... is_negative = True
... number = abs(number)
... elif number > 0:
... is_negative = False
... _, remainder = divmod(number, value)
... if is_negative:
... return -1*remainder
... else:
... return remainder
...
>>> calc_remainder(25, 3)
1
>>> calc_remainder(26, 3)
2
>>> calc_remainder(-26, 3)
-2
Display More
`number` ist die Ausgangszahl, `value` die Zahl, um die jeweils verringert / erhöht werden soll. Die Funktion geht implizit davon aus, das `value` positiv ist (sonst stimmt u.U.) das Ergebnis nicht.
Gruß, noisefloor