数値の合計セットビットをカウントする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