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

2進数にK個の連続した1があるかどうかをチェックするPythonプログラム?


まず、1と0を組み合わせたユーザー入力文字列を取得します。次に、1を使用して新しい文字列を作成し、p個の連続する1が存在するかどうかを確認します。存在する場合はFOUNDを表示し、存在しない場合はNOTFOUNDを表示します。

Binary number ::1111001111
Enter consecutive 1’s :3
Consecutive 1's 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 the consecutive 1’s in a binary number.
Step 2: form a new string of p 1’s.
   newstring=”1”*p
Step 3: check if there is p 1’s at any position.
   If newstring in X
      Display “FOUND”
   Else
      Display “NOT FOUND”
   End if

サンプルコード

# To check if there is k consecutive 1's in a binary number 
def binaryno_ones(n,p):
   # form a new string of k 1's 
   newstr = "1"*p

   # if there is k 1's at any position 
   if newstr in n:
      print ("Consecutive 1's is Found")
   else:
      print (" Consecutive 1's is Not Found")

# driver code
n =input("Enter Binary number ::")
p = int(input("Enter consecutive 1's ::"))
binaryno_ones(n, p)

出力

Enter Binary number ::1111001111
Enter consecutive 1's ::3
Consecutive 1's is Found

  1. 連続する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]

  2. アームストロング数をチェックするPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 整数nが与えられた場合、与えられた整数がアームストロング数であることを確認する必要があります。 正の整数は、次の場合、n次のアームストロング数と呼ばれます abcd... = a^n + b^n + c^n + d^n + … ここでは、3桁のアームストロング数、つまり3桁のブルートフォースアプローチについて説明します。 オーダーnのアームストロング番号を確認するには、3を行番号7の対応するオーダー値に置き換える必要があります。 それでは、実装を見てみましょう- 例