Каким будет самый быстрый способ найти степень 2, которую использовало определенное число (то есть степень двойки)?
Я не очень разбираюсь в математике, поэтому не знаю, как лучше это описать. Но функция будет выглядеть примерно так: x = 2^y, где y — это выход, а x — это вход. Вот таблица истинности того, как бы это выглядело, если бы это помогло объяснить это.
0 = f(1)
1 = f(2)
2 = f(4)
3 = f(8)
...
8 = f(256)
9 = f(512)
Я создал функцию, которая делает это, но боюсь, что она не очень эффективна (или элегантна, если уж на то пошло). Есть ли более простой и эффективный способ сделать это? Я использую это, чтобы вычислить, какая область текстуры используется для буферизации процесса рисования, поэтому она вызывается хотя бы один раз для каждого нарисованного объекта. Вот функция, которую я сделал на данный момент:
uint32 getThePowerOfTwo(uint32 value){
for(uint32 n = 0; n < 32; ++n){
if(value
Подробнее здесь: https://stackoverflow.com/questions/214 ... umber-used
Самый быстрый способ вычисления степени, которую использовало число «степень 2»? ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Самый быстрый способ вычисления степени, которую использовало число «степень 2»?
Anonymous » » в форуме C++ - 0 Ответы
- 16 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Самый быстрый способ вычисления возведения в степень двух разреженных матриц в Python?
Anonymous » » в форуме Python - 0 Ответы
- 73 Просмотры
-
Последнее сообщение Anonymous
-