ด้วยจำนวนเต็มบวก 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