Vorgehensweise round ceil floor modulo usw.
Tibor
- php
Hallo,
ich habe eine interessante Fragestellung, dessen Lösung unproblematisch einfach ist.
Folgende Fragestellung: Suche mir bei einem vorgegebenen Wert $wert (Zahl mit 2 Stellen hinter dem Komma) und einem vorgegebenen Divisor $divisor den neuen auf eine Stelle hinter dem Komma gerundeten Wert $neuwert, der wertmäßig am nächsten an $wert liegt und bei dem Modulo $neuwert zu $divisor Null ergibt.
Bisher nähere ich mich in je einer Schleife von $wert ausgehen einmal wertmäßig hoch und einmal wertmäßig niedrig, bis die erste Vorgabe jeweils stimmig ist. Danach vergleiche ich, welcher Neuwert näher am Ursprungswert liegt.
Aber vielleicht hat jemand von Euch eine pfiffigere oder ressourcenschonendere Lösung parat.
Mal gespannt, Tibor
@@Tibor:
nuqneH
Folgende Fragestellung: Suche mir bei einem vorgegebenen Wert $wert (Zahl mit 2 Stellen hinter dem Komma) und einem vorgegebenen Divisor $divisor den neuen auf eine Stelle hinter dem Komma gerundeten Wert $neuwert, der wertmäßig am nächsten an $wert liegt und bei dem Modulo $neuwert zu $divisor Null ergibt.
Das heißt, $divisor hat maximal eine Stelle nach dem Komma?
Aber vielleicht hat jemand von Euch eine pfiffigere oder ressourcenschonendere Lösung parat.
round($wert / $divisor) * $divisor
Qapla'
Aber vielleicht hat jemand von Euch eine pfiffigere oder ressourcenschonendere Lösung parat.
round($wert / $divisor) * $divisor
Qapla'
Danke für Deine Antwort. Ich hatte schon vermutet, dass es darauf hinauslaufen würde, aber konnte es nicht beweisen.
Tibor