数値のすべてのビットがPythonで設定されているかどうかを確認します
数nがあるとします。与えられた数nに対してすべてのビットが設定されているかどうか(1)を確認する必要があります。
したがって、入力がn =255のような場合、255のバイナリ表現は11111111であるため、出力はTrueになります。
これを解決するには、次の手順に従います-
- 数値が0と同じ場合、
- Falseを返す
- 数値>0の場合、実行
- 数値が偶数の場合、
- Falseを返す
- 数値:=(数値/ 2)の商
- 数値が偶数の場合、
- Trueを返す
理解を深めるために、次の実装を見てみましょう-
例
def solve(number): if number == 0: return False while number > 0: if (number & 1) == 0: return False number = number >> 1 return True n = 255 print(solve(n))
入力
255
出力
True
-
1からnまでのすべての数の合計セットビットをカウントするPythonプログラム。
正の整数nが与えられると、その2進表現に変更し、設定されたビットの総数をカウントします。 例 Input : n=3 Output : 4 アルゴリズム Step 1: Input a positive integer data. Step 2: then convert it to binary form. Step 3: initialize the variable s = 0. Step 4: traverse every element and add. Step 5: display sum. サンプルコード # Python program to count set bits #
-
2進数にK個の連続した1があるかどうかをチェックするPythonプログラム?
まず、1と0を組み合わせたユーザー入力文字列を取得します。次に、1を使用して新しい文字列を作成し、p個の連続する1が存在するかどうかを確認します。存在する場合はFOUNDを表示し、存在しない場合はNOTFOUNDを表示します。 例 Binary number ::1111001111 Enter consecutive 1’s :3 Consecutive 1s is Found アルゴリズム Step 1: input a string with the combination of 1’s, it’s stored in the variable X and 0’s and p is