数値の合計セットビットをカウントするC#プログラム
この例の数値は11、つまり2進数-
1101
合計セットビットは1101で3です。それを見つけるには、0と等しくなくなるまでループを使用します。ここでは、数値は11、つまり10進数-
while (num>0) { cal += num & 1; num >>= 1; }
数値の合計セットビットをカウントするには、次のコードを使用します。
using System; public class Demo { public static void Main() { int cal = 0; // Binary is 1011 int num = 11; while (num>0) { cal += num & 1; num >>= 1; } // 1 bits in 1101 are 3 Console.WriteLine("Total bits: "+cal); } }
Total bits: 3
-
整数のセットビットをカウントするC/C ++プログラム?
ここでは、整数のセットビット数を確認する方法を説明します。数値の2進表現では、設定されたビットは1です。たとえば、数値13には3つのセットビット1101があります。したがって、カウントは3になります。 この問題を解決するために、番号を右にシフトし、LSbが1の場合は、カウントを増やします。番号が0になるまで実行されます。 アルゴリズム countSetBit() begin count := 0 while count is not 0, do if LSb of n is set, then &
-
Cの浮動小数点数のセットビットを数える方法は?
この問題では、1つの浮動小数点値が与えられます。バイナリ表現で設定されたビット数を見つける必要があります。 たとえば、浮動小数点数が0.15625の場合、6つのセットビットがあります。典型的なCコンパイラは、単精度浮動小数点表現を使用していました。したがって、次のようになります。 ビット値に変換するには、数値を1つのポインター変数に取り込んでから、ポインターをchar*型データに型キャストする必要があります。次に、各バイトを1つずつ処理します。次に、各文字のセットビットをカウントできます。 例 #include <stdio.h> int char_set_bit_cou