Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python प्रोग्राम में अभाज्य संख्या खोजने के विभिन्न तरीकों का विश्लेषण

इस ट्यूटोरियल में, हम अभाज्य संख्या खोजने के विभिन्न तरीकों और प्रत्येक विधि के लिए आवश्यक समय को देखेंगे। हम निष्पादन समय की गणना के लिए time मॉड्यूल का उपयोग करेंगे।

विधि-1

यह अभाज्य संख्या खोजने की एक सामान्य विधि है।

  • यदि संख्या एक से कम या बराबर है, तो False लौटाएं।
  • यदि संख्या किसी संख्या से विभाज्य है, तो फ़ंक्शन False लौटाएगा।
  • लूप के बाद, True लौटाएं।

उदाहरण

# time मॉड्यूल आयात करें
import time

# अभाज्य संख्या की जांच
def is_prime(n):
    if n <= 1:
        return False
    else:
        for i in range(2, n):
            # फैक्टर की जांच
            if n % i == 0:
                # False लौटाएं
                return False
        # True लौटाएं
        return True

# प्रारंभ समय
start_time = time.time()
primes = 0
for i in range(100000):
    if is_prime(i):
        primes += 1
print(f'Total primes in the range {primes}')

# समाप्ति समय
end_time = time.time()
print(f'Execution time: {end_time - start_time}')

आउटपुट

यदि आप उपरोक्त प्रोग्राम चलाते हैं, तो आपको निम्न परिणाम मिलेंगे।

Total primes in the range 9594
Execution time: 63.1301212310791

विधि-2

इस विधि में, हम पुनरावृत्तियों की संख्या को n के वर्गमूल तक कम करके घटाते हैं।

आइए कोड देखें।

उदाहरण

# time मॉड्यूल आयात करें
import time

# sqrt फ़ंक्शन के लिए math मॉड्यूल आयात करें
import math

# अभाज्य संख्या की जांच
def is_prime(n):
    if n <= 1:
        return False
    else:
        # n के वर्गमूल तक लूप पुनरावृति
        for i in range(2, int(math.sqrt(n)) + 1):
            # फैक्टर की जांच
            if n % i == 0:
                # False लौटाएं
                return False
        # True लौटाएं
        return True

# प्रारंभ समय
start_time = time.time()
primes = 0
for i in range(100000):
    if is_prime(i):
        primes += 1
print(f'Total primes in the range {primes}')

# समाप्ति समय
end_time = time.time()
print(f'Execution time: {end_time - start_time}')

आउटपुट

यदि आप उपरोक्त प्रोग्राम चलाते हैं, तो आपको निम्न परिणाम मिलेंगे।

Total primes in the range 9592
Execution time: 0.2039644718170166

विधि-3

पिछली विधि में, हमने सम संख्याओं की जांच की है। हम सभी जानते हैं कि दो को छोड़कर सम संख्याएं अभाज्य नहीं हो सकतीं। इसलिए, इस विधि में, हम समय कम करने के लिए सभी सम संख्याओं को हटा देंगे।

उदाहरण

# time मॉड्यूल आयात करें
import time

# sqrt फ़ंक्शन के लिए math मॉड्यूल आयात करें
import math

# अभाज्य संख्या की जांच
def is_prime(n):
    # 1 से कम की जांच
    if n <= 1:
        return False
    # 2 की जांच
    elif n == 2:
        return True
    elif n > 2 and n % 2 == 0:
        return False
    else:
        # n के वर्गमूल तक लूप पुनरावृति
        for i in range(3, int(math.sqrt(n)) + 1, 2):
            # फैक्टर की जांच
            if n % i == 0:
                # False लौटाएं
                return False
        # True लौटाएं
        return True

# प्रारंभ समय
start_time = time.time()
primes = 0
for i in range(100000):
    if is_prime(i):
        primes += 1
print(f'Total primes in the range {primes}')

# समाप्ति समय
end_time = time.time()
print(f'Execution time: {end_time - start_time}')

आउटपुट

यदि आप उपरोक्त प्रोग्राम चलाते हैं, तो आपको निम्न परिणाम मिलेंगे।

Total primes in the range 9592
Execution time: 0.10342741012573242

निष्कर्ष

यदि ट्यूटोरियल के संबंध में आपके कोई संदेह हैं, तो उन्हें कमेंट सेक्शन में उल्लेख करें।

  1. पायथन प्रोग्राम: अभाज्य संख्या जांचें पायथन प्रोग्राम: अभाज्य संख्या जांचें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक संख्या दी गई है, हमें जांचना है कि दी गई संख्या अभाज्य संख्या है या नहीं। 1 से बड़ी दी गई धनात्मक संख्या जिसके 1 और संख्या स्वयं के अलावा कोई अन्य गुणनखंड नहीं होते, उसे अभाज्य संख्या कहा जाता है। 2, 3, 5, 7 आदि अभाज्य संख्

  1. पायथन प्रोग्राम: संख्या का सबसे बड़ा प्राइम फैक्टर ढूंढें पायथन प्रोग्राम: संख्या का सबसे बड़ा प्राइम फैक्टर ढूंढें

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट एक पॉजिटिव इंटीजर n दिए जाने पर। हमें संख्या का सबसे बड़ा प्राइम फैक्टर ढूंढने की आवश्यकता है। दृष्टिकोण दिए गए नंबर इनपुट को संख्या के डिवाइजर से विभाजित करके फैक्टराइज़ करें। अब अधिकतम प्राइम फैक्टर

  1. - पायथन में अभाज्य संख्या खोजने के विभिन्न तरीके

    सबसे पहले हमें यह जानने की जरूरत है कि अभाज्य संख्या क्या है। एक अभाज्य संख्या हमेशा एक धनात्मक पूर्णांक संख्या होती है और ठीक 2 पूर्णांकों (1 और संख्या स्वयं) से विभाज्य होती है, 1 अभाज्य संख्या नहीं है। अब हम अभाज्य संख्या खोजने के कुछ तरीकों पर चर्चा करेंगे। विधि 1 फॉर लूप्स का उपयोग करना उदाहरण