Python
 Computer >> コンピューター >  >> プログラミング >> Python

数値の合計ビットをカウントするPythonプログラムを作成しますか?


最初に数値を入力し、bin()関数を使用してこの数値をバイナリに変換し、次に出力文字列の最初の2文字「0b」を削除し、次にバイナリ文字列の長さを計算します。

Input:200
Output:8

説明

Binary representation of 200 is 10010000

アルゴリズム

Step 1: input number.
Step 2: convert number into its binary using bin() function.
Step 3: remove first two characters ‘0b’ of output binary string because bin function appends ‘ob’ a prefix in output string.
Step 4: then calculate the length of the binary string.

サンプルコード

# Python program to count total bits in a number
def totalbits(n):
   binumber = bin(n)[2:]
   print("TOTAL BITS ::>",len(binumber)) 
# Driver program
if __name__ == "__main__":
   n=int(input("Enter Number ::>"))
   totalbits(n)

出力

Enter Number ::>200
TOTAL BITS ::> 8

  1. PythonでnノードのBSTの数をカウントするプログラム

    n個の異なるノードがあるとします。すべてが異なります。二分探索木を形成するためにそれらを配置できる方法の数を見つける必要があります。二分探索木で知っているように、左側のサブツリーは常に小さい値を保持し、右側のサブツリーは大きい値を保持します。 これを解決するために、カタラン数を見つけます。カタラン数C(n)は、n個の異なるキーを持つ二分探索木を表します。式は次のようになります $$ C(n)=\ frac {(2n)!} {(n + 1)!\ times n!} $$ したがって、入力がn =3の場合、出力は5になります。 これを解決するには、次の手順に従います- 関数ncr

  2. 連続する1’のないバイナリ文字列の数をカウントするPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −正の整数Nが与えられているので、文字列に連続する1が存在しないように、長さNで使用可能なすべての可能な個別のバイナリ文字列をカウントする必要があります。 次に、以下の実装のソリューションを見てみましょう- 例 # count the number of strings def countStrings(n):    a=[0 for i in range(n)]    b=[0 for i in range(n)]    a[0] = b[0]