Modulusoperatorn och negativa nummer

C/C++

2 svar · 835 visningar · startad av Skotten_

Medlem sedan dec. 20042 inlägg
Trådstart#1

Jag har lite problem här med c-programmering. Jag vill att mina siffror ska befinna sig i intervallet 0 -> 99. Jag använder mig då utav (x+y)%100. Det fungerar bra för addition, men jag vill få det att fungera för subtraktion också - (x-y)%100. Så att det alltså blir så här: 5, 4, 3, 2, 1, 0, 99, 98, 97...
Nu blir det istället: 5, 4, 3, 2, 1, 0, -1, -2, -3... osv.

Hur skall jag göra?

Medlem sedan juni 20034 013 inlägg
#2

Kanske:

if (tal < 0)
tal += 100;

Medlem sedan dec. 20042 inlägg
#3

Ah, så lätt det kan vara, tackar.
Jag skyller det på bakfyllan ;)

247 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)