Как получить разрядность целого числаC#

Место общения программистов C#
Ответить
Anonymous
 Как получить разрядность целого числа

Сообщение Anonymous »

Конечно, я знаю способ сделать это:

Код: Выделить всё

/// Gets the number of bits needed to represent the number.
public static int Size(int bits)
{
var size = 0;
while(bits != 0)
{
bits >>= 1;
size++;
}
return size;
}
Таким образом, Size(15) возвращает 4, а Size(16) возвращает 5.

Но я думаю (надеюсь), что есть более быстрый способ. Но я не мог придумать (или Google) хороший, плавный (и быстрый) алгоритм.

Подробнее здесь: https://stackoverflow.com/questions/390 ... ger-number
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»