কম্পিউটার

পাইথনে সাজানো ক্রমে একটি প্রদত্ত সংখ্যার সমস্ত মৌলিক গুণনীয়ক খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের 1 এর চেয়ে বড় একটি সংখ্যা n আছে, আমাদের তার সমস্ত মৌলিক গুণনীয়কগুলি খুঁজে বের করতে হবে এবং সেগুলিকে সাজানো ক্রমানুসারে ফেরত দিতে হবে। আমরা মৌলিক সংখ্যার গুণফল হিসাবে একটি সংখ্যা লিখতে পারি, তারা তার মৌলিক গুণনীয়ক। এবং একই প্রাইম ফ্যাক্টর একাধিকবার ঘটতে পারে।

সুতরাং, যদি ইনপুট 42 এর মত হয়, তাহলে আউটপুট হবে [2, 3, 7]।

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

  • res:=একটি নতুন তালিকা
  • যদিও n mod 2 0 এর মতো, do
    • res এর শেষে 2 ঢোকান
    • n :=n/2 এর ভাগফল
  • 3 থেকে (n-এর বর্গমূল) রেঞ্জের i জন্য, ধাপ 2 এ বৃদ্ধি করুন
    • যদিও n mod i 0 এর মত, do
      • res এর শেষে i ঢোকান
      • n :=n/i এর ভাগফল
  • যদি n> 2 হয়, তাহলে
    • res এর শেষে n ঢোকান
  • রিটার্ন রিটার্ন

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

উদাহরণ

class Solution:
   def solve(self, n):
      res=[]
      while n%2==0:
         res.append(2)
         n//=2
      for i in range(3,int(n**.5)+1,2):
         while n%i==0:
            res.append(i)
            n//=i
      if n>2:
         res.append(n)
      return res
ob = Solution()
print(ob.solve(42))

ইনপুট

42

আউটপুট

[2, 3, 7]

  1. একটি সংখ্যার বিজোড় গুণনীয়কের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  2. একটি সংখ্যার জোড় গুণকের যোগফল খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  3. একটি সংখ্যার বৃহত্তম মৌলিক ফ্যাক্টর খুঁজে বের করার জন্য পাইথন প্রোগ্রাম

  4. একটি সংখ্যার অনন্য মৌলিক গুণনীয়কের পণ্যের জন্য পাইথন প্রোগ্রাম