কম্পিউটার

প্রদত্ত নম্বরটি Ore নম্বর কিনা তা পাইথনে পরীক্ষা করুন


ধরুন আমাদের একটি সংখ্যা n আছে। আমাদের পরীক্ষা করতে হবে n একটি আকরিক সংখ্যা কি না। যেমন আমরা জানি একটি আকরিক সংখ্যা হল এমন একটি সংখ্যা যার ভাজকের একটি পূর্ণসংখ্যা হারমোনিক মান রয়েছে৷

সুতরাং, যদি ইনপুটটি 28 এর মত হয়, তাহলে আউটপুটটি সত্য হবে কারণ 28 এর ছয়টি ভাজক রয়েছে:[1, 2, 4, 7, 14, 28], তাই

প্রদত্ত নম্বরটি Ore নম্বর কিনা তা পাইথনে পরীক্ষা করুন

যেহেতু 3 একটি পূর্ণসংখ্যা তাই 28 একটি আকরিক সংখ্যা।

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

  • একটি ফাংশন সংজ্ঞায়িত করুন get_all_div()। এটি n
  • লাগবে
  • div :=একটি নতুন তালিকা
  • এর জন্য i রেঞ্জ 1 থেকে পূর্ণসংখ্যার অংশ (n এর বর্গমূল), কর
    • যদি n i দ্বারা বিভাজ্য হয়, তাহলে
      • যদি (n / i) এর ভাগফল i হয়, তাহলে
        • div-এর শেষে i ঢোকান
      • অন্যথায়,
        • div-এর শেষে i ঢোকান
        • div-এর শেষে (n / i) এর ভাগফল যোগ করুন
  • রিটার্ন ডিভি
  • একটি ফাংশন সংজ্ঞায়িত করুন get_harmonic_mean()। এটি n
  • লাগবে
  • div :=get_all_div(n)
  • মোট :=0
  • দৈর্ঘ্য :=div এর আকার
  • আমি 0 থেকে দৈর্ঘ্য - 1 রেঞ্জের জন্য, কর
    • মোট :=মোট + (n / div[i])
  • মোট :=মোট / n
  • রিটার্ন দৈর্ঘ্য / মোট
  • প্রধান পদ্ধতি থেকে নিম্নলিখিতগুলি করুন:
  • মান :=get_harmonic_mean(n)
  • যদি গড় একটি পূর্ণসংখ্যা হয়, তাহলে
    • সত্য ফেরান
  • মিথ্যে ফেরত দিন

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

উদাহরণ কোড

def get_all_div(n):  
   div = []
   for i in range(1, int(n**(0.5)) + 1):
      if n % i == 0:
         if n // i == i:
           div.append(i)
         else:
           div.append(i)
           div.append(n // i)
   return div

def get_harmonic_mean(n):
   div = get_all_div(n)

   total = 0
   length = len(div)
 
   for i in range(0, length):
      total += (n / div[i])
 
   total /= n
   return length / total
 
def solve(n):
   mean = get_harmonic_mean(n)
   if mean - int(mean) == 0:
      return True
   return False

n = 28
print(solve(n))

ইনপুট

28

আউটপুট

True

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

  2. পাইথনে কোন বড় সংখ্যা 19 দ্বারা বিভাজ্য কিনা তা পরীক্ষা করুন

  3. পাইথন - একটি প্রদত্ত স্ট্রিং বাইনারি স্ট্রিং কিনা তা পরীক্ষা করুন

  4. একটি সংখ্যা প্রাইম কি না তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম