কম্পিউটার টিউটোরিয়াল

পাইথনে দেওয়া পজিশন থেকে 'k' বিট এক্সট্রাক্ট করার প্রোগ্রাম

এই ফাংশনটি pos পজিশন থেকে k বিট এক্সট্রাক্ট করে এক্সট্রাক্টেড ভ্যালু রিটার্ন করে। এখানে পাইথন স্লাইসিং টেকনিক ব্যবহার করা হয়েছে।

উদাহরণ

ইনপুট:: number=170 K=5 Pos=2
আউটপুট=21

অ্যালগরিদম

Extractionbit(no,k,pos) /* ইউজার ইনপুট সংখ্যা no-তে, এক্সট্রাক্টেড বিট k-তে, বিটের পজিশন pos-এ */
ধাপ ১: সংখ্যাকে bin() দিয়ে বাইনারি ফর্মে রূপান্তর করুন।
ধাপ ২: প্রথম দুটি ক্যারেক্টার সরান।
ধাপ ৩: ডান পাশ থেকে pos পজিশন থেকে k বিট এক্সট্রাক্ট করুন। তাই, এক্সট্রাক্টিং সাবস্ট্রিংয়ের এন্ডিং ইনডেক্স e = len(bi) - pos এবং স্টার্টিং ইনডেক্স = e - k + 1
ধাপ ৪: k বিট সাবস্ট্রিং এক্সট্রাক্ট করুন।
ধাপ ৫: এক্সট্রাক্টেড সাবস্ট্রিংকে আবার ডেসিমলে রূপান্তর করুন।

উদাহরণ কোড

# পাইথন প্রোগ্রাম: সংখ্যার নির্দিষ্ট পজিশন থেকে 'k' বিট এক্সট্রাক্ট
def extractedbits(no, k, pos):
    bi = bin(no)
    bi = bi[2:]
    e = len(bi) - pos
    s = e - k + 1
    substr = bi[s:e+1]
    print("চূড়ান্ত ফলাফল ::>", int(substr, 2))

# ড্রাইভার প্রোগ্রাম
if __name__ == "__main__":
    no = int(input("সংখ্যা দিন ::>"))
    k = int(input("k বিট দিন ::>"))
    pos = int(input("পজিশন দিন ::>"))
    extractedbits(no, k, pos)

আউটপুট

সংখ্যা দিন ::>170
k বিট দিন ::>5
পজিশন দিন ::>2
চূড়ান্ত ফলাফল ::>21
  1. পাইথন প্রোগ্রাম: অ্যারে নির্দিষ্ট পজিশন পর্যন্ত রিভার্স করা

  2. পাইথন প্রোগ্রাম: দেওয়া স্ট্রিং থেকে সকল সম্ভাব্য বৈধ IP ঠিকানা জেনারেট করা

  3. পাইথন প্রোগ্রাম: ১ থেকে n পর্যন্ত সকল সংখ্যার টোটাল সেট বিট গণনা

  4. পাইথনে বাক্য থেকে ডুপ্লিকেট শব্দ সরিয়ে ফেলার প্রোগ্রাম