Zweierpotenz in Javascript?

...komplette Frage anzeigen

2 Antworten

du berechnest den Logarithmus zur Basis 2, also Math.log(x)/Math.log(2). Ist das eine ganze Zahl dann war x eine Zweierpotenz. Wenn nicht den Wert runden und dann mit Math.pow wieder die Potenz bilden.

Antwort bewerten Vielen Dank für Deine Bewertung

Als Zusatz zur Antwort von "freejack75":

function nextPowerOfTwo(x) {
return Math.pow(2, Math.ceil(Math.log2(x)));
}

// ...

nextPowerOfTwo(0) == 1
nextPowerOfTwo(1) == 1
nextPowerOfTwo(2) == 2
nextPowerOfTwo(3) == 4
nextPowerOfTwo(4) == 4
nextPowerOfTwo(5) == 8
nextPowerOfTwo(6) == 8

Und so weiter ... :)

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?