Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python นับจำนวน set bit ทั้งหมด ตั้งแต่ 1 ถึง n


ด้วยจำนวนเต็มบวก n จากนั้นเราจะเปลี่ยนเป็นการแทนค่าไบนารีและนับจำนวนเซ็ตบิตทั้งหมด

ตัวอย่าง

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
# in all numbers from 1 to n.
def countbits(n):
   # initialize the counter
   c = 0
   for i in range(1, n + 1):
   c += bitsetcount(i)
   return c
   def bitsetcount(x):
      if (x <= 0):
      return 0
      return (0 if int(x % 2) == 0 else 1) + bitsetcount(int(x / 2))
      # Driver program
      n = int(input("Enter the value of n"))
print("Total set bit count is", countbits(n))

ผลลัพธ์

Enter the value of n10
Total set bit count is 17