यादृच्छिक पीढ़ी। कार्य और डेटा विश्लेषण में एक्सेल रैंडम नंबर जेनरेटर

एक स्पष्ट और सुविधाजनक ऑनलाइन नंबर जनरेटर, जिसका उपयोग किया जाता है हाल तकलोकप्रियता। उपयोगकर्ताओं के बीच सामाजिक नेटवर्क में पुरस्कारों के ड्राइंग के दौरान सबसे बड़ा वितरण प्राप्त किया।

यह अन्य क्षेत्रों में भी लोकप्रिय है। इसके अलावा हमारे पास या पासवर्ड और नंबर हैं।

हमारा ऑनलाइन यादृच्छिक संख्या जनरेटर।

हमारे रैंडमाइज़र जनरेटर को आपको इसे अपने निजी पीसी पर डाउनलोड करने की आवश्यकता नहीं है। सब कुछ ऑनलाइन नंबर जेनरेटर मोड में होता है। बस पैरामीटर निर्दिष्ट करें जैसे: ऑनलाइन नंबरों की एक श्रृंखला जिसमें संख्याओं को यादृच्छिक रूप से चुना जाएगा। चयनित होने वाली संख्याओं की संख्या भी निर्दिष्ट करें।

उदाहरण के लिए, आपके पास Vkontakte समूह है। एक समूह में, आप प्रविष्टि को दोबारा पोस्ट करने वाले प्रतिभागियों की संख्या के बीच 5 पुरस्कार प्राप्त कर रहे हैं। एक विशेष एप्लिकेशन की सहायता से, हमें प्रतिभागियों की एक सूची प्राप्त हुई। प्रत्येक को ऑनलाइन नंबरों के लिए एक सीरियल नंबर सौंपा गया था।

अब हम अपने ऑनलाइन जनरेटर पर जाते हैं और संख्याओं की श्रेणी (प्रतिभागियों की संख्या) का संकेत देते हैं। उदाहरण के लिए, हम पूछते हैं कि 5 नंबर ऑनलाइन चाहिए, क्योंकि हमारे पास 5 पुरस्कार हैं। अब हम जनरेट बटन दबाते हैं। तब हमें 5 मिलते हैं यादृच्छिक संख्याऑनलाइन, 1 से 112 समावेशी तक की सीमा में। ऑनलाइन जनरेट किए गए 5 नंबर ड्रॉ के विजेता बनने वाले पांच प्रतिभागियों के सीरियल नंबर के अनुरूप होंगे। सब कुछ सरल और सुविधाजनक है।

यादृच्छिक संख्या जनरेटर का एक और प्लस यह है कि सभी ऑनलाइन नंबर यादृच्छिक रूप से उत्पन्न होते हैं। यही है, इसे प्रभावित करना या यह गणना करना संभव नहीं है कि आगे कौन सी संख्या होगी। क्या यह ईमानदार और विश्वसनीय बनाता है, और प्रशासन, जो हमारे मुफ्त जनरेटर की मदद से पुरस्कार खींचता है, प्रतियोगियों के सामने ईमानदार और सभ्य है। और अगर आपको किसी समाधान के बारे में संदेह है, तो आप हमारा उपयोग कर सकते हैं

यादृच्छिक संख्या जेनरेटर सबसे अच्छा क्यों है?

तथ्य यह है कि संख्या जनरेटर ऑनलाइनकिसी भी डिवाइस पर और हमेशा ऑनलाइन उपलब्ध। आप ईमानदारी से अपने किसी भी विचार के लिए कोई भी संख्या उत्पन्न कर सकते हैं। और परियोजना के उपयोग के लिए वही रैंडम संख्या जनरेटरऑनलाइन। विशेष रूप से यदि आपको गेम के विजेता या ऑनलाइन किसी भिन्न संख्या के लिए निर्धारित करने की आवश्यकता है। तथ्य यह है कि रैंडम संख्या जनरेटरएल्गोरिदम के बिना किसी भी संख्या को पूरी तरह से यादृच्छिक रूप से उत्पन्न करता है। यह मूल रूप से संख्याओं के लिए समान है।

रैंडम नंबर जेनरेटर मुफ्त में ऑनलाइन!

यादृच्छिक संख्या जनरेटर सभी के लिए मुफ्त में ऑनलाइन। आपको कोई डाउनलोड करने या खरीदने की आवश्यकता नहीं है रैंडम संख्या जनरेटरड्रा के लिए ऑनलाइन। आपको बस हमारी वेबसाइट पर जाने की जरूरत है और वह परिणाम प्राप्त करें जिसकी आपको आवश्यकता है। हमारे पास न केवल है रैंडम संख्या जनरेटरलेकिन बहुत से लोगों की जरूरत भी है जो निश्चित रूप से आपको लॉटरी जीतने में मदद करेंगे। लॉटरी के लिए एक वास्तविक ऑनलाइन यादृच्छिक संख्या जनरेटर एक पूर्ण दुर्घटना है। जो हमारी साइट आपको प्रदान करने में सक्षम है।

यादृच्छिक संख्या ऑनलाइन

यदि आप ऑनलाइन एक यादृच्छिक संख्या की तलाश कर रहे हैं, तो हमने यह संसाधन सिर्फ आपके लिए बनाया है। हम अपने एल्गोरिदम में लगातार सुधार कर रहे हैं। तुम यहाँ वास्तविक हो जाओ रैंडम संख्या जनरेटर।यह एक यादृच्छिक जनरेटर के रूप में किसी भी आवश्यकता को पूरी तरह से नि: शुल्क और किसी भी समय प्रदान करेगा। हमारे साथ ऑनलाइन यादृच्छिक संख्याएँ उत्पन्न करें। हमेशा सुनिश्चित करें कि प्रत्येक उत्पन्न संख्या पूरी तरह यादृच्छिक है।

रैंडम संख्या जनरेटर

हमारा यादृच्छिक संख्या जनरेटर बेतरतीब ढंग से संख्याओं का पूरी तरह से यादृच्छिक रूप से चयन करता है। इससे कोई फर्क नहीं पड़ता कि आपके कंप्यूटर पर कौन सा दिन या घंटा है। यह एक वास्तविक अंधी पसंद है। रैंडम जनरेटर बस सभी नंबरों को बेतरतीब ढंग से फेरबदल करता है। और फिर यादृच्छिक रूप से उनमें से आपके द्वारा निर्दिष्ट यादृच्छिक संख्याओं की संख्या चुनता है। कभी-कभी संख्याओं को दोहराया जा सकता है, जो यादृच्छिक संख्या जनरेटर की पूर्ण यादृच्छिकता को सिद्ध करता है।

रैंडम ऑनलाइन

ड्रा के लिए रैंडम निश्चित विकल्प है। ऑनलाइन जनरेटर असली है यादृच्छिक चयन. आप एक यादृच्छिक संख्या के चुनाव पर किसी भी प्रभाव से सुरक्षित हैं। वीडियो पर विजेता के यादृच्छिक ऑनलाइन चयन की प्रक्रिया को फिल्माना। आपको बस इतना ही चाहिए। हमारे साथ निष्पक्ष ऑनलाइन शरारतें खेलें ऑनलाइन जनरेटरनंबर। आपको विजेता और संतुष्ट खिलाड़ी मिलते हैं। और हमें खुशी है कि हम अपने यादृच्छिक जनरेटर से आपको खुश करने में सक्षम थे।

हमारे पास संख्याओं का एक क्रम है, जिसमें लगभग स्वतंत्र तत्व शामिल हैं जो किसी दिए गए वितरण का पालन करते हैं। आमतौर पर समान रूप से वितरित।

आप एक्सेल में विभिन्न तरीकों और तरीकों से यादृच्छिक संख्याएँ उत्पन्न कर सकते हैं। आइए उनमें से सर्वश्रेष्ठ पर एक नज़र डालें।

एक्सेल में रैंडम नंबर फंक्शन

  1. रैंड फ़ंक्शन एक समान रूप से वितरित वास्तविक संख्या देता है। यह 1 से कम, 0 से अधिक या उसके बराबर होगा।
  2. RANDBETWEEN फ़ंक्शन एक यादृच्छिक पूर्णांक देता है।

आइए उदाहरणों के साथ उनके उपयोग को देखें।

रैंड के साथ यादृच्छिक संख्या का चयन

इस फ़ंक्शन को किसी भी तर्क (रैंड ()) की आवश्यकता नहीं है।

1 और 5 के बीच एक यादृच्छिक वास्तविक संख्या उत्पन्न करने के लिए, उदाहरण के लिए, निम्न सूत्र का उपयोग करें: =RAND()*(5-1)+1.

लौटाई गई यादृच्छिक संख्या अंतराल पर समान रूप से वितरित की जाती है।

हर बार जब वर्कशीट की गणना की जाती है, या वर्कशीट में किसी भी सेल में वैल्यू बदल जाती है, तो एक नया रैंडम नंबर दिया जाता है। यदि आप उत्पन्न जनसंख्या को सहेजना चाहते हैं, तो आप सूत्र को उसके मान से बदल सकते हैं।

  1. हम एक यादृच्छिक संख्या वाले सेल पर क्लिक करते हैं।
  2. सूत्र पट्टी में सूत्र को हाइलाइट करें।
  3. F9 दबाएं। और दर्ज करें।

वितरण हिस्टोग्राम का उपयोग करके पहले नमूने से यादृच्छिक संख्याओं के वितरण की एकरूपता की जाँच करें।


ऊर्ध्वाधर मूल्यों की सीमा आवृत्ति है। क्षैतिज - "जेब"।



रैंडबेटवेन समारोह

RANDBETWEEN फ़ंक्शन का सिंटैक्स (निचला बाउंड; ऊपरी बाउंड) है। पहला तर्क दूसरे से कम होना चाहिए। अन्यथा, फ़ंक्शन एक त्रुटि फेंक देगा। सीमाओं को पूर्णांक माना जाता है। सूत्र भिन्नात्मक भाग को छोड़ देता है।

फ़ंक्शन का उपयोग करने का एक उदाहरण:

0.1 और 0.01 सटीकता के साथ यादृच्छिक संख्याएँ:

एक्सेल में रैंडम नंबर जनरेटर कैसे बनाये

चलो एक निश्चित सीमा से एक मूल्य की पीढ़ी के साथ एक यादृच्छिक संख्या जनरेटर बनाते हैं। हम एक सूत्र का उपयोग करते हैं जैसे: =INDEX(A1:A10;INTEGER(RAND()*10)+1).

चलिए 10 के चरण के साथ 0 से 100 की श्रेणी में एक यादृच्छिक संख्या जनरेटर बनाते हैं।

सूची से पाठ मानआपको 2 यादृच्छिक चुनने की आवश्यकता है। रैंड फ़ंक्शन का उपयोग करते हुए, हम श्रेणी A1:A7 में पाठ मानों की यादृच्छिक संख्याओं के साथ तुलना करते हैं।

आइए मूल सूची से दो यादृच्छिक पाठ मानों का चयन करने के लिए INDEX फ़ंक्शन का उपयोग करें।

सूची से एक यादृच्छिक मान का चयन करने के लिए, निम्न सूत्र लागू करें: =INDEX(A1:A7,RANDBETWEEN(1,COUNT(A1:A7))).

सामान्य वितरण यादृच्छिक संख्या जेनरेटर

रैंड और रैंडबेटवेन फ़ंक्शन एकल वितरण के साथ यादृच्छिक संख्या उत्पन्न करते हैं। समान संभावना वाला कोई भी मान अनुरोधित सीमा की निचली सीमा और ऊपरी सीमा में गिर सकता है। यह लक्ष्य मूल्य से बहुत बड़ा प्रसार करता है।

सामान्य वितरण का अर्थ है कि उत्पन्न अधिकांश संख्याएँ लक्ष्य के करीब हैं। आइए RANDBETWEEN सूत्र को ठीक करें और एक सामान्य वितरण के साथ एक डेटा सरणी बनाएँ।

माल एक्स की लागत 100 रूबल है। उत्पादित पूरा बैच सामान्य वितरण के अधीन है। यादृच्छिक चर भी एक सामान्य संभाव्यता वितरण का अनुसरण करता है।

ऐसी परिस्थितियों में, सीमा का औसत मूल्य 100 रूबल है। आइए एक सरणी उत्पन्न करें और 1.5 रूबल के मानक विचलन के साथ सामान्य वितरण के साथ एक ग्राफ बनाएं।

हम फ़ंक्शन का उपयोग करते हैं: =NORMINV(RAND();100;1.5).

एक्सेल ने गणना की कि कौन से मूल्य संभावनाओं की सीमा में हैं। चूंकि 100 रूबल की लागत वाले उत्पाद के उत्पादन की संभावना अधिकतम है, सूत्र बाकी की तुलना में 100 के करीब मान दिखाता है।

चलिए प्लॉटिंग पर चलते हैं। सबसे पहले आपको श्रेणियों के साथ एक टेबल बनाने की जरूरत है। ऐसा करने के लिए, हम सरणी को अवधियों में विभाजित करते हैं:

प्राप्त आंकड़ों के आधार पर, हम सामान्य वितरण के साथ आरेख बना सकते हैं। मूल्य अक्ष अंतराल में चर की संख्या है, श्रेणी अक्ष अवधि है।

यादृच्छिक संख्याओं के अनुक्रम को निर्धारित करने के लिए ऑनलाइन संख्या जनरेटर काफी सरल और सुविधाजनक सहायक सेवा है। पाइथागोरस ने एक बार कहा था, "संख्या दुनिया पर राज करती है।" प्राचीन काल में भी लोग संख्याओं के जादू में विश्वास करते थे। इस प्रकार, अंक विज्ञान का जन्म हुआ। संख्या लोगों को खुशी और दुख दोनों देती है।
हमने एक यादृच्छिक संख्या जनरेटर विकसित किया है ताकि यह निश्चित रूप से प्रत्येक उपयोगकर्ता को खुश करे।

संतुष्ट:

यादृच्छिक चयन कार्यक्रम किस पर आधारित है?

यादृच्छिक - अंग्रेजी से "यादृच्छिक" के रूप में अनुवादित। बहुत बार, जादुई संयोग से, अनजाने में चुनी गई संख्याएं एक संख्या बन जाती हैं लॉटरी टिकट, प्रतियोगिता में भाग लेने वालों की सूची में आपका नंबर।

यादृच्छिक चयन का प्रयोग कहाँ किया जाता है?

संख्यात्मक यादृच्छिकता व्यापक हो गई है:
लॉटरी के कारोबार में
कैसीनो, हिप्पोड्रोम, विभिन्न के प्रशंसकों के बीच खेल प्रतियोगिताओं
सामाजिक प्रतियोगिताओं के आयोजन में। नेटवर्क

ऑनलाइन यादृच्छिक संख्या आरेखण विजेता का उचित चयन सुनिश्चित करता है।

लॉटरी में हमारी सेवा का उपयोग करके, आप 36 में से गोस्लोतो 5, 49 में से 7, स्टोलोटो और अन्य जैसी परियोजनाओं में भाग ले सकते हैं। कैसीनो प्रेमी हमारे ऑनलाइन जनरेटर की भी सराहना करेंगे।

दुर्भाग्य से, मानव मस्तिष्क अक्सर जानकारी की नकल करने में सक्षम होता है, कभी-कभी नए संयोजन के साथ आना मुश्किल होता है। यादृच्छिक संख्या जनरेटर आपको बताएगा कि प्रतिष्ठित पुरस्कार कैसे जीता जाए।

नंबर जनरेटर कैसे चुनें

ऑनलाइन कई समान सेवाएं दी जाती हैं, लेकिन हैं सुपरजेनरेटर्स वेबसाइट पर RNG रैंडम नंबर जेनरेटर चुनने के 5 कारण:

  • सादगी और उपयोग में आसानी
  • संख्याओं की विस्तृत श्रृंखला
  • मोबाइल संस्करण की सुविधा
  • सामाजिक नेटवर्क के लिए कोई विशिष्ट लिंक नहीं
  • स्पष्ट निर्देश, विशिष्ट इंटरफ़ेस

हमारे रैंडमाइज़र के साथ सफलता के 4 चरण:

  1. उस संख्यात्मक श्रेणी को नामित करें जिसमें आप एक नमूना प्राप्त करना चाहते हैं
  2. आउटपुट संख्याओं की वांछित संख्या निर्धारित करें
  3. "जनरेट" बटन पर क्लिक करें
  4. प्राप्त उत्तर की प्रतिलिपि बनाएँ और खुशी के लिए छत पर कूदें!

सुपर नंबर जेनरेटर के साथ, आपके जीवन में अधिक सफल क्षण होंगे!
हमारा मुफ़्त चुनने के लिए धन्यवाद ऑनलाइन सेवा.
आपकी और आपके दोस्तों की मदद करने में हमेशा खुशी होती है!

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

इस तरह के ड्रॉ का परिणाम अक्सर उपयोगकर्ता के भाग्य पर निर्भर करता है, क्योंकि पुरस्कार के प्राप्तकर्ता को यादृच्छिक रूप से निर्धारित किया जाता है।

इस तरह के दृढ़ संकल्प के लिए, ड्रा आयोजक लगभग हमेशा एक ऑनलाइन यादृच्छिक संख्या जनरेटर या एक पूर्व-स्थापित एक का उपयोग करते हैं जो नि: शुल्क वितरित किया जाता है।

पसंद

काफी बार, ऐसे जनरेटर को चुनना मुश्किल हो सकता है, क्योंकि उनकी कार्यक्षमता काफी भिन्न होती है - कुछ के लिए यह काफी सीमित है, दूसरों के लिए यह काफी विस्तृत है।

काफी बड़ी संख्या में ऐसी सेवाएं कार्यान्वित की जा रही हैं, लेकिन कठिनाई यह है कि वे कार्यक्षेत्र में भिन्न हैं।

कई, उदाहरण के लिए, उनकी कार्यक्षमता से एक निश्चित से बंधे हैं सामाजिक नेटवर्क(उदाहरण के लिए, VKontakte पर कई जनरेटर एप्लिकेशन केवल इस सामाजिक नेटवर्क के लिंक के साथ काम करते हैं)।

सबसे सरल जनरेटर केवल एक निश्चित सीमा के भीतर एक यादृच्छिक संख्या उत्पन्न करते हैं।

यह सुविधाजनक है क्योंकि यह परिणाम को किसी विशिष्ट पोस्ट से संबद्ध नहीं करता है, जिसका अर्थ है कि उनका उपयोग सामाजिक नेटवर्क के बाहर ड्रॉ के लिए और विभिन्न अन्य स्थितियों में किया जा सकता है।

उनका वास्तव में कोई अन्य उपयोग नहीं है।

<Рис. 1 Генератор>

सलाह!सबसे उपयुक्त जनरेटर चुनते समय, उस उद्देश्य पर विचार करना महत्वपूर्ण है जिसके लिए इसका उपयोग किया जाएगा।

विशेष विवरण

इष्टतम ऑनलाइन यादृच्छिक संख्या जनरेशन सेवा चुनने की सबसे तेज़ प्रक्रिया के लिए, नीचे दी गई तालिका मुख्य दिखाती है विशेष विवरणऔर ऐसे अनुप्रयोगों की कार्यक्षमता।

तालिका 1. कामकाज की विशेषताएं ऑनलाइन आवेदनएक यादृच्छिक संख्या उत्पन्न करने के लिए
नाम सामाजिक नेटवर्क एकाधिक परिणाम संख्याओं की सूची में से चयन करें वेबसाइट के लिए ऑनलाइन विजेट एक श्रेणी से चयन करें दोहराव बंद करें
randstuff हाँ हाँ नहीं हाँ नहीं
पांसा फेंकना आधिकारिक साइट या VKontakte नहीं नहीं हाँ हाँ हाँ
यादृच्छिक संख्या आधिकारिक साइट नहीं नहीं नहीं हाँ हाँ
रैंडम आधिकारिक साइट हाँ नहीं नहीं हाँ नहीं
यादृच्छिक संख्या आधिकारिक साइट हाँ नहीं नहीं नहीं नहीं

तालिका में चर्चा किए गए सभी अनुप्रयोगों को नीचे और अधिक विवरण में वर्णित किया गया है।

<Рис. 2 Случайные числа>

randstuff

<Рис. 3 RandStuff>

आप इसकी आधिकारिक वेबसाइट http://randstuff.ru/number/ के लिंक का उपयोग करके इस एप्लिकेशन का ऑनलाइन उपयोग कर सकते हैं।

यह एक साधारण यादृच्छिक संख्या जनरेटर है, तेजी से और स्थिर संचालन की विशेषता।

यह आधिकारिक वेबसाइट पर एक अलग स्वतंत्र आवेदन के प्रारूप में और VKontakte सामाजिक नेटवर्क में एक आवेदन के रूप में सफलतापूर्वक लागू किया गया है।

इस सेवा की ख़ासियत यह है कि यह निर्दिष्ट सीमा से और साइट पर निर्दिष्ट की जा सकने वाली संख्याओं की एक विशिष्ट सूची से एक यादृच्छिक संख्या चुन सकती है।

पेशेवरों:

  • स्थिर और तेज़ काम;
  • सोशल नेटवर्क से सीधे लिंक का अभाव;
  • आप एक या अधिक संख्याओं का चयन कर सकते हैं;
  • आप केवल दिए गए नंबरों में से चुन सकते हैं।

विपक्ष:

  • VKontakte पर ड्रॉ आयोजित करने की असंभवता (इसके लिए एक अलग आवेदन की आवश्यकता है);
  • VKontakte के लिए एप्लिकेशन सभी ब्राउज़रों में नहीं चलते हैं;
  • परिणाम कभी-कभी अनुमानित लगता है, क्योंकि केवल एक गणना एल्गोरिदम का उपयोग किया जाता है।

इस एप्लिकेशन के बारे में उपयोगकर्ता समीक्षाएँ इस प्रकार हैं: “हम इस सेवा के माध्यम से VKontakte समूहों में विजेताओं का निर्धारण करते हैं। धन्यवाद", "आप सबसे अच्छे हैं", "मैं केवल इस सेवा का उपयोग करता हूं"।

पांसा फेंकना

<Рис. 4 Cast Lots>

यह एप्लिकेशन VKontakte एप्लिकेशन के रूप में आधिकारिक वेबसाइट पर कार्यान्वित एक साधारण फ़ंक्शन जनरेटर है।

आपकी वेबसाइट पर एम्बेड करने के लिए जनरेटर विजेट भी है।

पिछले वर्णित एप्लिकेशन से मुख्य अंतर यह है कि यह आपको परिणाम की पुनरावृत्ति को अक्षम करने की अनुमति देता है।

यही है, जब एक सत्र में कई पीढ़ियों को एक पंक्ति में आयोजित किया जाता है, तो संख्या दोहराई नहीं जाएगी।

  • किसी वेबसाइट या ब्लॉग पर डालने के लिए विजेट की उपस्थिति;
  • परिणाम की पुनरावृत्ति को अक्षम करने की क्षमता;
  • फ़ंक्शन "और भी यादृच्छिकता" की उपस्थिति, जिसके सक्रियण के बाद चयन एल्गोरिथ्म बदल जाता है।

नकारात्मक:

  • एक साथ कई परिणाम निर्धारित करने में असमर्थता;
  • संख्याओं की एक विशिष्ट सूची से चयन करने में असमर्थता;
  • सार्वजनिक रूप से एक विजेता का चयन करने के लिए, आपको एक अलग VKontakte विजेट का उपयोग करना होगा।

उपयोगकर्ता समीक्षाएँ इस प्रकार हैं: "यह स्थिर रूप से काम करता है, यह उपयोग करने के लिए काफी सुविधाजनक है", "सुविधाजनक कार्यक्षमता", "मैं केवल इस सेवा का उपयोग करता हूं"।

यादृच्छिक संख्या

<Рис. 5 Случайное число>

यह सेवा http://random number.rf/ पर स्थित है।

के साथ एक साधारण जनरेटर न्यूनतम कार्य और अतिरिक्त सुविधाएँ।

किसी दी गई सीमा के भीतर बेतरतीब ढंग से संख्याएँ उत्पन्न कर सकता है (अधिकतम 1 से 99999 तक)।

साइट में कोई ग्राफिक डिज़ाइन नहीं है, और इसलिए पेज लोड करना आसान है।

रिजल्ट को एक बटन के क्लिक के साथ कॉपी या डाउनलोड किया जा सकता है।

नकारात्मक:

  • VKontakte के लिए कोई विजेट नहीं;
  • ड्रॉ आयोजित करने की कोई संभावना नहीं है;
  • परिणाम को ब्लॉग या वेबसाइट में डालने का कोई तरीका नहीं है।

यहाँ उपयोगकर्ताओं के बारे में क्या कहते हैं जै सेवा: "एक अच्छा जनरेटर, लेकिन पर्याप्त कार्य नहीं", "बहुत कम सुविधाएँ", "अनावश्यक सेटिंग्स के बिना जल्दी से एक संख्या उत्पन्न करने के लिए उपयुक्त।"

रैंडम

<Рис. 6 Рандомус>

आप इस यादृच्छिक संख्या जनरेटर का उपयोग http://randomus.ru/ पर कर सकते हैं।

एक और सरल, लेकिन कार्यात्मक यादृच्छिक संख्या जनरेटर।

सेवा में यादृच्छिक संख्या निर्धारित करने के लिए पर्याप्त कार्यक्षमता है, हालांकि, यह ड्रॉ और अन्य जटिल प्रक्रियाओं को आयोजित करने के लिए उपयुक्त नहीं है।

नकारात्मक:

  • पोस्ट रेपोस्ट आदि के आधार पर ड्रॉ आयोजित करने की असंभवता।
  • VKontakte या साइट के लिए विजेट के लिए कोई आवेदन नहीं है;
  • दोहराए जाने वाले परिणामों को अक्षम करना संभव नहीं है।

क्या आपने कभी सोचा है कि Math.random() कैसे काम करता है? यादृच्छिक संख्या क्या है और इसे कैसे प्राप्त किया जाता है? और एक साक्षात्कार में एक प्रश्न की कल्पना करें - कोड की कुछ पंक्तियों में अपना यादृच्छिक संख्या जनरेटर लिखें। और इसलिए, यह क्या है, एक दुर्घटना और क्या इसकी भविष्यवाणी करना संभव है?

मैं विभिन्न आईटी पहेलियों और पहेलियों से बहुत रोमांचित हूं, और यादृच्छिक संख्या जनरेटर ऐसी पहेलियों में से एक है। आमतौर पर अपने टेलीग्राम चैनल में मैं हर तरह की पहेलियों और साक्षात्कारों से विभिन्न कार्यों को सुलझाता हूं। यादृच्छिक संख्या जनरेटर के बारे में समस्या ने बहुत लोकप्रियता हासिल की है और मैं इसे सूचना के आधिकारिक स्रोतों में से एक की गहराई में बनाए रखना चाहता हूं - यानी यहां हैबे पर।

यह सामग्री उन सभी फ्रंट-एंड डेवलपर्स और Node.js डेवलपर्स के लिए उपयोगी होगी जो प्रौद्योगिकी के क्षेत्र में सबसे आगे हैं और ब्लॉकचेन प्रोजेक्ट/स्टार्टअप में शामिल होना चाहते हैं, जहां सुरक्षा और क्रिप्टोग्राफी के बारे में कम से कम प्रश्न पूछे जाते हैं। बुनियादी स्तर, यहां तक ​​कि फ्रंट-एंड डेवलपर्स से भी पूछा जाता है।

छद्म यादृच्छिक संख्या जनरेटर और यादृच्छिक संख्या जनरेटर

कुछ यादृच्छिक प्राप्त करने के लिए, हमें एंट्रॉपी के स्रोत की आवश्यकता होती है, किसी प्रकार की अराजकता का स्रोत जिससे हम यादृच्छिकता उत्पन्न करने के लिए उपयोग करेंगे।

इस स्रोत का उपयोग एन्ट्रॉपी को संचित करने के लिए किया जाता है और फिर उससे प्रारंभिक मान (प्रारंभिक मूल्य, बीज) प्राप्त किया जाता है, जो यादृच्छिक संख्या जेनरेटर (आरएनजी) के लिए यादृच्छिक संख्या उत्पन्न करने के लिए आवश्यक है।

छद्म-यादृच्छिक संख्या जेनरेटर एकल बीज मूल्य का उपयोग करता है, इसलिए इसकी छद्म-यादृच्छिकता, जबकि यादृच्छिक संख्या जेनरेटर हमेशा एक यादृच्छिक संख्या उत्पन्न करता है, जो उच्च-गुणवत्ता वाले यादृच्छिक मान से शुरू होता है जो एंट्रॉपी के विभिन्न स्रोतों से लिया जाता है।

एन्ट्रॉपी - विकार का एक उपाय है। सूचना एन्ट्रापी सूचना की अनिश्चितता या अप्रत्याशितता का एक उपाय है।
यह पता चला है कि छद्म-यादृच्छिक अनुक्रम बनाने के लिए, हमें एक एल्गोरिथ्म की आवश्यकता होती है जो एक निश्चित सूत्र के आधार पर कुछ अनुक्रम उत्पन्न करेगा। लेकिन इस तरह के क्रम की भविष्यवाणी की जा सकती है। हालाँकि, आइए कल्पना करें कि यदि हमारे पास Math.random() नहीं है तो हम अपना स्वयं का यादृच्छिक संख्या जनरेटर कैसे लिख सकते हैं

पीआरएनजी में कुछ एल्गोरिदम हैं जिन्हें पुन: उत्पन्न किया जा सकता है।
RNG - किसी भी शोर से पूरी तरह से संख्या प्राप्त कर रहा है, जिसकी गणना करने की क्षमता शून्य हो जाती है। इसी समय, वितरण को समतल करने के लिए RNG के पास कुछ एल्गोरिदम हैं।

अपने स्वयं के PRNG एल्गोरिथम का आविष्कार करना

छद्म-यादृच्छिक संख्या जनरेटर (पीआरएनजी) एक एल्गोरिदम है जो संख्याओं का अनुक्रम उत्पन्न करता है जिनके तत्व एक-दूसरे से लगभग स्वतंत्र होते हैं और किसी दिए गए वितरण (आमतौर पर वर्दी) का पालन करते हैं।
हम कुछ संख्याओं का अनुक्रम ले सकते हैं और उनसे संख्या का मापांक ले सकते हैं। सबसे सरल उदाहरण जो दिमाग में आता है। हमें यह सोचने की जरूरत है कि किस क्रम को लेना है और किस मॉड्यूल से। यदि सीधे 0 से N और मॉड्यूल 2 से, तो आपको 1 और 0 का जनरेटर मिलता है:

फ़ंक्शन * रैंड () ( const n = 100; const mod = 2; चलो i = 0; जबकि (सत्य) (उपज i% mod; if (i++ > n) i = 0;)) चलो i = 0; for (रैंड का x ()) ( if (i++ > 100) break; कंसोल.लॉग(x); )
यह फ़ंक्शन हमारे लिए 01010101010101 अनुक्रम उत्पन्न करता है ... और इसे छद्म-यादृच्छिक भी नहीं कहा जा सकता है। एक जनरेटर के यादृच्छिक होने के लिए, उसे अगले बिट के लिए परीक्षण पास करना होगा। लेकिन हमारे पास ऐसा कोई काम नहीं है। फिर भी, बिना किसी परीक्षण के भी, हम अगले अनुक्रम की भविष्यवाणी कर सकते हैं, जिसका अर्थ है कि ऐसा एल्गोरिदम माथे में उपयुक्त नहीं है, लेकिन हम सही दिशा में हैं।

लेकिन क्या होगा अगर हम कुछ प्रसिद्ध, लेकिन गैर-रैखिक अनुक्रम लेते हैं, उदाहरण के लिए, संख्या पीआई। और मॉड्यूल के मूल्य के रूप में हम 2 नहीं, बल्कि कुछ और लेंगे। तुम भी मॉड्यूल के बदलते मूल्य के बारे में सोच सकते हैं। पाई में अंकों का क्रम यादृच्छिक माना जाता है। जनरेटर किसी अज्ञात बिंदु से पाई का उपयोग करके काम कर सकता है। पीआई-आधारित अनुक्रम और मॉड्यूलो परिवर्तन के साथ ऐसे एल्गोरिदम का एक उदाहरण:

कॉन्स्ट वेक्टर = [...Math.PI.toFixed(48).replace(".","")]; समारोह * रैंड () (के लिए (चलो मैं = 3; मैं<1000; i++) { if (i >99) मैं = 2; के लिए (चलो एन = 0; एन लेकिन JS में, संख्या PI को केवल 48 वर्णों तक ही प्रदर्शित किया जा सकता है और इससे अधिक नहीं। इसलिए, इस तरह के अनुक्रम की भविष्यवाणी करना अभी भी आसान है, और ऐसे जनरेटर का प्रत्येक रन हमेशा एक ही संख्या का उत्पादन करेगा। लेकिन हमारा जनरेटर 0 से 9 तक की संख्या दिखाना शुरू कर चुका है।

हमें 0 से 9 तक एक नंबर जनरेटर मिला है, लेकिन वितरण बहुत असमान है और यह हर बार एक ही क्रम उत्पन्न करेगा।

संख्यात्मक निरूपण में हम संख्या पाई नहीं, बल्कि समय ले सकते हैं और इस संख्या को अंकों का अनुक्रम मान सकते हैं, और क्रम को हर बार दोहराने से रोकने के लिए, हम इसे अंत से पढ़ेंगे। कुल मिलाकर, हमारे PRNG के लिए हमारा एल्गोरिथ्म इस तरह दिखेगा:

फ़ंक्शन * रैंड () (चलो newNumVector = () => [...(+नई तिथि)+""].रिवर्स (); अगर (i++> 99) i = 2; चलो n=-1; जबकि (++n< vector.length) yield (vector[n] % i); vector = newNumVector(); } } // TEST: let i = 0; for (let x of rand()) { if (i++ >100) ॐ नमः। कंसोल.लॉग (एक्स))
अब यह छद्म-यादृच्छिक संख्या जनरेटर जैसा दिखता है। और वही Math.random() - एक PRNG है, हम इसके बारे में थोड़ी देर बाद बात करेंगे। इसके अलावा, हर बार पहली संख्या अलग होती है।

दरअसल इन पर सरल उदाहरणआप समझ सकते हैं कि अधिक जटिल यादृच्छिक संख्या जनरेटर कैसे काम करते हैं।और तैयार-निर्मित एल्गोरिदम भी हैं। उदाहरण के लिए, उनमें से एक का विश्लेषण करते हैं - यह रैखिक सर्वांगसम PRNG (LCPRNG) है।

रैखिक सर्वांगसम PRNG

रैखिक सर्वांगसम PRNG (LCPRNG) -  छद्म-यादृच्छिक संख्या उत्पन्न करने के लिए एक सामान्य विधि है। इसमें क्रिप्टोग्राफिक ताकत नहीं है। इस पद्धति में एक सूत्र द्वारा दिए गए कुछ प्राकृतिक संख्या m के रैखिक आवर्तक अनुक्रम मॉड्यूलो की शर्तों की गणना करना शामिल है। परिणामी अनुक्रम प्रारंभिक संख्या  - i.e की पसंद पर निर्भर करता है। बीज। पर विभिन्न अर्थबीज यादृच्छिक संख्याओं के विभिन्न क्रमों को उत्पन्न करता है। जावास्क्रिप्ट में इस तरह के एक एल्गोरिथ्म के कार्यान्वयन का एक उदाहरण:

कॉन्स्ट ए = 45; कास्ट सी = 21; कॉन्स्ट एम = 67; वरसीद = 2; कॉन्स्ट रैंड = () => बीज = (ए * बीज + सी)% एम; के लिए (चलो मैं = 0; मैं<30; i++) console.log(rand())
कई प्रोग्रामिंग लैंग्वेज LCPRNG का उपयोग करती हैं (लेकिन न केवल इस तरह के एक एल्गोरिथ्म (!)।

जैसा ऊपर बताया गया है, इस तरह के अनुक्रम की भविष्यवाणी की जा सकती है। तो हमें PRNG की आवश्यकता क्यों है? अगर हम सुरक्षा की बात करें तो PRNG एक समस्या है। यदि हम अन्य कार्यों के बारे में बात करते हैं, तो ये गुण  -  एक प्लस खेल सकते हैं। उदाहरण के लिए, विभिन्न विशेष प्रभावों और ग्राफिक्स एनिमेशन के लिए, आपको बार-बार यादृच्छिक कॉल करने की आवश्यकता हो सकती है। और यहाँ मूल्यों और प्रदर्शन का वितरण महत्वपूर्ण है! सुरक्षा एल्गोरिदम गति का दावा नहीं कर सकते।

एक और संपत्ति - पुनरुत्पादन। कुछ कार्यान्वयन आपको एक बीज निर्दिष्ट करने की अनुमति देते हैं, जो एक क्रम को दोहराने के लिए बहुत उपयोगी होता है। उदाहरण के लिए परीक्षणों में प्रजनन आवश्यक है। और भी बहुत सी ऐसी चीज़ें हैं जिनके लिए सुरक्षित RNG की आवश्यकता नहीं होती है।

कैसे Math.random() काम करता है

Math.random() विधि श्रेणी से एक छद्म-यादृच्छिक फ़्लोटिंग पॉइंट संख्या देता है = क्रिप्टो.getRandomValues(new Uint8Array(1)); कंसोल लॉग (रैवल्यू)
लेकिन, PRNG Math.random() के विपरीत, यह विधि बहुत संसाधन गहन है। तथ्य यह है कि यह जनरेटर ओएस में सिस्टम कॉल का उपयोग एन्ट्रापी स्रोतों (पोस्ता पता, सीपीयू, तापमान, आदि ...) तक पहुंचने के लिए करता है।


ऊपर