ik zit met het volgende waar ik niet helemaal uitkom.
ik heb een classe welke een integer voor moet stellen. de lower en upper bound zijn volledige zelf in te stellen en nu probeer ik het zo te maken dat elke integer waarde die je er aan geeft mapt of overflowed naar een getal binnen de range die gezet is door de waardes van de upper en lower bound.
dus stel dat ik de lower bound instel op 5 en de upper op 15 en ik probeer een waarde 17 eraan te geven dat wordt de werkelijke waarde gesteld op 6. ik ben nu zover dat ik dit werkend heb maar alleen indien de lower-bound <= 0 en de upper > 0. hier is de mijn huidige code:
helaas krijg ik het niet werkend zodra lower > 0. ik denk dat dit komt omdat ik de waarde eerst compenseer naar 0 en dan pas de modulus er op los laat omdat later weer te compenseeren voor het werkelijke getal. volgensmij denk ik veel te moeilijk maar het enige alternatief dat ik zie is een complexe while loop wat niet echt goed is voor de performance volgensmij.
wie o wie helpt mij?
ik heb een classe welke een integer voor moet stellen. de lower en upper bound zijn volledige zelf in te stellen en nu probeer ik het zo te maken dat elke integer waarde die je er aan geeft mapt of overflowed naar een getal binnen de range die gezet is door de waardes van de upper en lower bound.
dus stel dat ik de lower bound instel op 5 en de upper op 15 en ik probeer een waarde 17 eraan te geven dat wordt de werkelijke waarde gesteld op 6. ik ben nu zover dat ik dit werkend heb maar alleen indien de lower-bound <= 0 en de upper > 0. hier is de mijn huidige code:
PHP:
1
2
3
4
5
| $lower = -5; $upper = 15; $input = 135; $value = (($value - $lower) % (($upper - $lower) + 1)) + $lower); |
helaas krijg ik het niet werkend zodra lower > 0. ik denk dat dit komt omdat ik de waarde eerst compenseer naar 0 en dan pas de modulus er op los laat omdat later weer te compenseeren voor het werkelijke getal. volgensmij denk ik veel te moeilijk maar het enige alternatief dat ik zie is een complexe while loop wat niet echt goed is voor de performance volgensmij.
wie o wie helpt mij?