কম্পিউটার

পাইথনে প্রাইম গণনা করুন


ধরুন আমাদের একটি সীমা আছে। আমাদের 2 থেকে n রেঞ্জে উপস্থিত মৌলিক সংখ্যা গণনা করতে হবে। তাই n =10 হলে ফলাফল হবে 4। যেহেতু 10 এর আগে চারটি প্রাইম আছে, সেগুলি হল 2, 3, 5, 7।

এটি সমাধান করার জন্য, আমরা এই পদ্ধতি অনুসরণ করব -

  • গণনা =0
  • একটি অ্যারে প্রাইম =n + 1 আকারের নিন এবং এটি False দিয়ে পূরণ করুন
  • এর জন্য i =0 থেকে n, করুন
    • যদি prime[i] =মিথ্যা, তাহলে
      • গণনা 1 দ্বারা বৃদ্ধি করুন
      • জে =2 সেট করুন
      • যখন j * i
      • prime[i * j] =সত্য
      • j =j + 1
  • রিটার্ন গণনা
  • উদাহরণ

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

    class Solution(object):
       def countPrimes(self, n):
          """
          :type n: int
          :rtype: int
          """
          count = 0
          primes = [False for i in range(n+1)]
          for i in range(2,n):
             if primes[i] == False:
                count+=1
                j = 2
                while j*i<n:
                   primes[j*i] = True
                   j+=1
          return count
    ob1 = Solution()
    print(ob1.countPrimes(50))
    print(ob1.countPrimes(10))

    ইনপুট

    n = 50
    n = 10

    আউটপুট

    15
    4

    1. পাইথনে স্ট্রিং-এ একটি অক্ষরের ঘটনা গণনা করুন

    2. Python এ গণনা করুন এবং বলুন

    3. পাইথন প্রোগ্রাম একটি অ্যারের মধ্যে বিপরীত গণনা

    4. পাইথনে ক্লাস বা স্ট্যাটিক ভেরিয়েবল?