এই আর্টিকেলে আমরা নিচের সমস্যা সমাধানের কথা শিখব।
সমস্যা: একটি ইন্টিজার n দেওয়া আছে, আমাদের সংখ্যাটির বাইনারি রিপ্রেজেন্টেশনে ১-এর সংখ্যা গণনা করতে হবে।
চলুন নিচের ইমপ্লিমেন্টেশনে সমাধানটি পর্যবেক্ষণ করি।
# নেইভ পদ্ধতি
উদাহরণ
# বিট কাউন্ট
def count(n):
count = 0
while (n):
count += n & 1
n >>= 1
return count
# মেইন
n = 15
print("The number of bits :", count(n))
আউটপুট
The number of bits : 4
# রিকার্সিভ পদ্ধতি
উদাহরণ
# রিকার্সিভ পদ্ধতি
def count(n):
# বেস কেস
if (n == 0):
return 0
else:
# লাস্ট বিট সেট আছে কিনা
return (n & 1) + count(n >> 1)
# মেইন
n = 15
print("The number of bits :", count(n))
আউটপুট
The number of bits : 4
উপসংহার
এই আর্টিকেলে আমরা শিখেছি কিভাবে পাইথন প্রোগ্রাম দিয়ে একটি ইন্টিজারের সেট বিটের সংখ্যা গণনা করা যায়।