C++で数値の合計ビットをカウントします
たとえば、numの整数が与えられます。タスクは、最初に数値の2進数を計算し、数値の合計桁を計算することです。
入力 −int番号=50
出力 −数値の合計ビット数は− 6
説明 −数値50の2進表現は110010であり、8桁の数値で計算すると、最初に2つの0が追加されます。したがって、数値の合計ビット数は6です。
入力 −int番号=10
出力 −数値の合計ビット数は− 6
説明 −数値10の2進表現は00001010であり、8桁の数値で計算すると、最初に4つの0が追加されます。したがって、数値の合計ビット数は4です。
以下のプログラムで使用されているアプローチは次のとおりです
-
整数型の変数に数値を入力します
-
変数countを宣言して、unsignedint型のビットの総数を格納します
-
ループFORをiから1<<7およびi>0およびiからi/2
に開始します。 -
ループ内で、num&1 ==TRUEをチェックしてから、1を出力します。それ以外の場合は0を出力します
-
ループを開始し、数値が0になるまでビットの総数を計算します
-
ループ内で、countの値を1ずつ増やし、number>> =1
を設定します。 -
カウントを印刷する
例
#include using namespace std; //Count total bits in a number unsigned int bits(unsigned int number){ unsigned int count = 0; unsigned i; //display the total 8-bit number cout<<"8-bit digits of "<<number<<" is: "; for (i = 1 << 7; i > 0; i = i / 2){ (number & i)? cout<<"1": cout<<"0"; } //calculate the total bits in a number while (number){ count++; number >>= 1; } cout<<"\nCount of total bits in a number are: "<<count; } int main(){ int number = 50; bits(number); return 0; }
出力
上記のコードを実行すると、次の出力が生成されます-
8-bit digits of 50 is: 00110010 Count of total bits in a number are: 6
-
C ++を使用してOpenCVのフレームの総数をカウントするにはどうすればよいですか?
OpenCVでフレームの総数を計算する方法を学びます。 OpenCVを使用すると、ビデオのフレームの総数をカウントして表示するのが基本です。ただし、リアルタイムビデオフレームの総数をカウントできないことに注意する必要があります。リアルタイム動画には特定のフレーム数がないためです。 次のプログラムは、合計フレーム数をカウントし、コンソールウィンドウに表示します。 例 #include<opencv2/opencv.hpp> #include<iostream> using namespace std; using namespace cv; int main() { &
-
C++で長方形の正方形の数を数える
=Bとなるように、長さL、幅Bの長方形が与えられます。目標は、サイズLXBの長方形が収容できる正方形の数を見つけることです。 上の図は、サイズ3 X 2の長方形を示しています。2、2X2の正方形、6,1X1の正方形があります。 総正方形=6+ 2=8。 サイズLXBのすべての長方形には、1X1の正方形のL*B数があります。 最大の正方形のサイズはBXBです。 L =B =1の場合、正方形=1。 L =B =2の場合、正方形=1 + 4 =5(2X2の1、1X1の4) L =B =3の場合、正方形=1 + 4 + 9 =14(3X3の1、2X2の4、1