ऑनलाइन अभाज्य संख्या जनरेटर
अभाज्य संख्या क्या है?
अभाज्य संख्या 1 से बड़ी एक प्राकृतिक संख्या है जो केवल 1 और स्वयं से विभाज्य होती है। सबसे छोटी अभाज्य संख्याएँ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29… हैं। संख्या 2 एकमात्र सम अभाज्य संख्या है – अन्य सभी सम संख्याएँ दो से विभाज्य होती हैं।
4 (= 2 × 2), 6 (= 2 × 3) या 15 (= 3 × 5) जैसी संख्याएँ अभाज्य नहीं हैं – इन्हें भाज्य संख्याएँ कहा जाता है।
जनरेटर कैसे काम करता है?
किसी श्रेणी में सभी अभाज्य संख्याओं को सूचीबद्ध करने के लिए, हम एराटोस्थनीज़ की छलनी का उपयोग करते हैं – यह सबसे पुराने और सबसे प्रभावी एल्गोरिदम में से एक है, जिसे 240 ईसा पूर्व के आसपास साइरेन के यूनानी गणितज्ञ एराटोस्थनीज़ ने वर्णित किया था।
यह एल्गोरिथम प्रत्येक मिली अभाज्य संख्या के गुणकों को क्रमिक रूप से हटाता है। जो बचता है, वह अभाज्य संख्याएँ होती हैं। पूरी गणना सीधे आपके ब्राउज़र में होती है – कोई डेटा सर्वर पर नहीं भेजा जाता है।
यादृच्छिक चयन के लिए, जनरेटर पहले श्रेणी में सभी अभाज्य संख्याओं की एक सूची बनाता है और फिर क्रिप्टोग्राफिक रूप से सुरक्षित जनरेटर (crypto.getRandomValues()) का उपयोग करके उनमें से वांछित संख्या का यादृच्छिक रूप से चयन करता है।
जनरेटर की विशेषताएँ
- सभी अभाज्य संख्याएँ – दी गई श्रेणी में प्रत्येक अभाज्य संख्या को सूचीबद्ध करता है (अधिकतम 10,000)
- यादृच्छिक चयन – श्रेणी से N यादृच्छिक अभाज्य संख्याओं का चयन करता है (बड़ी श्रेणियों के लिए उपयुक्त)
- क्रमबद्धता – परिणामों को आरोही क्रम में क्रमबद्ध करें
- विभाजक – कॉपी करते समय संख्याओं को कैसे अलग किया जाए, यह चुनें
- त्वरित प्रीसेट – एक क्लिक में सबसे सामान्य श्रेणियां
अभाज्य संख्याओं का उपयोग कहाँ होता है?
क्रिप्टोग्राफी और सुरक्षा
अभाज्य संख्याएँ आधुनिक क्रिप्टोग्राफी का आधार हैं। RSA जैसे एल्गोरिथम इस सिद्धांत पर काम करते हैं कि दो बड़ी अभाज्य संख्याओं का गुणनफल ज्ञात करना आसान है, लेकिन उन्हें वापस उनके अभाज्य गुणनखंडों में विघटित करना कम्प्यूटेशनल रूप से बहुत कठिन है।
- RSA एन्क्रिप्शन – कुंजियाँ दो बड़ी अभाज्य संख्याओं से उत्पन्न होती हैं
- डिफ़ी-हेलमैन – अभाज्य संख्या मॉड्यूल पर कुंजी विनिमय
- हैशिंग फ़ंक्शन – अभाज्य संख्याएँ जादुई स्थिरांक के रूप में (SHA, MD5)
गणित और विज्ञान
- संख्या सिद्धांत – पूर्णांकों के मूल निर्माण खंड
- गोल्डबैक अनुमान – प्रत्येक सम संख्या > 2 को दो अभाज्य संख्याओं के योग के रूप में व्यक्त किया जा सकता है (अभी तक सिद्ध नहीं हुआ है)
- रीमैन परिकल्पना – हिल्बर्ट की समस्याओं में से एक, अभाज्य संख्याओं के वितरण से संबंधित है
व्यावहारिक उपयोग
- हैश तालिकाएँ – अभाज्य संख्या के रूप में तालिका का आकार टकराव को कम करता है
- छद्म-यादृच्छिक संख्या जनरेटर – अभाज्य संख्या मॉड्यूल के साथ रैखिक सर्वांगसमता
- संगीत और ताल – अभाज्य संख्या चक्र लंबाई के साथ पॉलीरिदम
अभाज्य संख्याओं का वितरण
अभाज्य संख्याएँ प्राकृतिक संख्याओं के बीच अनियमित रूप से वितरित होती हैं, लेकिन उनकी घनत्व श्रेणी बढ़ने के साथ घटती जाती है। इसका वर्णन अभाज्य संख्या प्रमेय द्वारा किया गया है: N तक अभाज्य संख्याओं की संख्या लगभग N / ln(N) होती है।
| श्रेणी | अभाज्य संख्याओं की संख्या |
|---|---|
| 1–10 | 4 |
| 1–100 | 25 |
| 1–1,000 | 168 |
| 1–10,000 | 1,229 |
| 1–100,000 | 9,592 |
| 1–1,000,000 | 78,498 |
एराटोस्थनीज़ की छलनी चरण-दर-चरण
श्रेणी 2–30:
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30]
1. 2 चुनें, गुणकों को काटें: 4, 6, 8, 10, 12...
2. 3 चुनें, गुणकों को काटें: 9, 15, 21, 27...
3. 5 चुनें, गुणकों को काटें: 25...
4. √30 ≈ 5.5 → हो गया
अभाज्य संख्याएँ: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29
कोड में एराटोस्थनीज़ की छलनी
JavaScript
function sieve(to) {
const composite = new Uint8Array(to + 1);
const primes = [];
for (let p = 2; p <= to; p++) {
if (composite[p]) continue;
primes.push(p);
for (let j = p * p; j <= to; j += p) composite[j] = 1;
}
return primes;
}
Python
def sieve(n):
composite = bytearray(n + 1)
primes = []
for p in range(2, n + 1):
if not composite[p]:
primes.append(p)
for j in range(p * p, n + 1, p):
composite[j] = 1
return primes