কম্পিউটার

পাইথনে একটি সংখ্যার বিজোড় স্থানে অঙ্কের যোগফল K দ্বারা বিভাজ্য কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি সংখ্যা n এবং আরেকটি সংখ্যা আছে, আমাদের পরীক্ষা করতে হবে যে n এর বিজোড় স্থানে (ডান দিক থেকে বাম দিকে) সংখ্যার যোগফল k দ্বারা বিভাজ্য কি না।

সুতরাং, যদি ইনপুটটি n =2416 k =5 এর মত হয়, তাহলে আউটপুটটি True হবে কারণ ডান থেকে বামে বিজোড় স্থাপন করা সংখ্যার যোগফল হল 4 + 6 =10৷ যা 5 দ্বারা বিভাজ্য৷

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • মোট :=0, pos :=1
  • যখন n> 0 , do
    • যদি pos বিজোড় হয়, তাহলে
      • মোট :=মোট + (n মোড 10)
    • n :=(n / 10) এর ভাগফল
    • pos :=pos + 1
  • যদি মোট k দ্বারা বিভাজ্য হয়, তাহলে
    • সত্য ফেরান
  • মিথ্যে ফেরত দিন

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ কোড

def solve(n, k):
   total = 0
   pos = 1
   while n > 0:
      if pos % 2 == 1:
         total += n % 10
      n = n // 10
      pos += 1
     
   if total % k == 0:
      return True
   return False

n = 2416
k = 5
print(solve(n, k))

ইনপুট

2416, 5

আউটপুট

True

  1. পাইথনে N একটি ডিহেড্রাল প্রাইম নম্বর কিনা তা পরীক্ষা করুন

  2. একটি সংখ্যার সমস্ত সংখ্যা পাইথনে বিভক্ত কিনা তা পরীক্ষা করুন

  3. একটি অ্যারের সমস্ত সংখ্যা ব্যবহার করে 3 সংখ্যা দ্বারা বিভাজ্য করা সম্ভব কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম

  4. পাইথন ব্যবহার করে একটি সংখ্যা বিজোড় বা জোড় কিনা তা কীভাবে পরীক্ষা করবেন?