"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > क्या कंप्यूटर में यादृच्छिक संख्या वास्तव में यादृच्छिक हैं? जेएस संस्करण

क्या कंप्यूटर में यादृच्छिक संख्या वास्तव में यादृच्छिक हैं? जेएस संस्करण

2025-04-13 को पोस्ट किया गया
ब्राउज़ करें:173

] ] यह लेख बताता है कि कैसे जावास्क्रिप्ट

का उपयोग करके यादृच्छिकता का अनुकरण करता है, जो हम यादृच्छिक संख्याओं के रूप में देखते हैं, उसे उत्पन्न करने के पीछे यांत्रिकी का अनावरण करते हैं।

कंप्यूटिंग में यादृच्छिकता का भ्रम

Is random numbers in computers are random at all? JS version कंप्यूटर, उनके मूल में, क्रमिक रूप से निर्देशों को निष्पादित करते हैं। तो, वे यादृच्छिक रूप से दिखाई देने वाली संख्याओं का उत्पादन कैसे करते हैं?

] ] यह छद्म याद है। छद्म-यादृच्छिक संख्या जनरेटर (prngs) यादृच्छिक-जैसे व्यवहार को प्रदर्शित करने वाले संख्याओं के अनुक्रम बनाने के लिए गणितीय एल्गोरिदम को नियुक्त करते हैं।

prngs की प्रमुख विशेषताएं: Is random numbers in computers are random at all? JS version

] बीज पूरे अनुक्रम को निर्धारित करता है।

] ]

]

] ] यह निम्नानुसार कार्य करता है:

] उदाहरणों में 0.2315601941492, 0.6874206142281, या 0.9912760919023 शामिल हैं।

    // 0 और 1 के बीच यादृच्छिक संख्या कंसोल.लॉग (Math.random ()); // 0 और 9 के बीच यादृच्छिक पूर्णांक कंसोल.लॉग (Math.floor (Math.random () * 10)); // 1 और 100 के बीच यादृच्छिक संख्या कंसोल.लॉग (Math.floor (Math.random () * 100) 1);
  1. ] प्रक्रिया में ये चरण शामिल हैं:
  2. एक प्रारंभिक बीज मान का उपयोग किया जाता है। यह बीज अक्सर सिस्टम घड़ी या किसी अन्य अद्वितीय स्रोत से लिया जाता है।
  3. एल्गोरिथ्म एक नया नंबर बनाने के लिए बीज में गणितीय परिवर्तनों को लागू करता है। ] ]
  4. ] क्यों सही यादृच्छिकता मायावी बनी हुई है ] एन्क्रिप्शन जैसे सुरक्षा-संवेदनशील कार्यों के लिए, क्रिप्टोग्राफिक रूप से सुरक्षित यादृच्छिक संख्या आवश्यक हैं, वेब क्रिप्टो एपीआई का उपयोग करके उत्पन्न:

// क्रिप्टोग्राफिक रूप से सुरक्षित यादृच्छिक मान const array = new uint32array (5); window.crypto.getrandomvalues ​​(सरणी); कंसोल.लॉग (सरणी);

नियतात्मक प्रणालियों में यादृच्छिकता की चुनौती

Is random numbers in computers are random at all? JS version

] यादृच्छिकता को प्रभावी ढंग से अनुकरण करने के लिए: ] ]

निष्कर्ष: एक आवश्यक भ्रम कंप्यूटर में यादृच्छिकता एक सावधानीपूर्वक निर्मित भ्रम है, जो परिष्कृत एल्गोरिदम और प्रारंभिक बीजों पर निर्भर है। जबकि

math.random ()

कई अनुप्रयोगों के लिए व्यावहारिक है, इसकी सीमाओं और नियतात्मक प्रकृति को स्वीकार किया जाना चाहिए। सुरक्षा और सच्ची यादृच्छिकता के लिए, क्रिप्टोग्राफिक तरीके आवश्यक हैं।
]

 
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3