Din metode
increment gør som du siger: Den forøger værdien med 1, men hvis tallet er større end limit, vil den lave hvad du kalder et "rollover" og altså starte forfra:
value = (5 + 1) % 10; = 6
value = (6 + 1) % 10; = 7
value = (7 + 1) % 10; = 8
value = (8 + 1) % 10; = 9
value = (9 + 1) % 10; = 0
value = (10 + 1) % 10; = 1
value = (11 + 1) % 10; = 2
Modulus operatoren returnerer "resten" af en division. Hvis du dividere et tal med et større tal, vil den derfor (selvfølgelig) returnere hele det oprindelige tal:
11 % 15 = 11
15 % 11 = (15 - 11 * 1) = 4
Indlæg senest redigeret d. 25.06.2013 11:35 af Bruger #11328