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

जावा में समान बीज का उपयोग करने पर मुझे समान यादृच्छिक संख्याएँ क्यों मिलती हैं?

2024-11-09 को प्रकाशित
ब्राउज़ करें:134

Why do I get identical random numbers when using the same seed in Java?

निश्चित बीज के साथ जावा रैंडम नंबर: समान आउटपुट क्यों?

अपने कोड में, आपने यादृच्छिक संख्या उत्पन्न करने के लिए एक विधि परिभाषित की है एक निर्दिष्ट बीज. हालाँकि, आप देख रहे हैं कि जब आप एक ही बीज प्रदान करते हैं, तो सभी 100 उत्पन्न संख्याएँ समान होती हैं।

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

कोड को ठीक करना

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

यहां सही कोड है:निजी रैंडम जनरेटर = नया रैंडम(); डबल रैंडम जेनरेटर() { वापसी जनरेटर.nextDouble() * 0.5; }

इस परिवर्तन के साथ, जब भी आप रैंडम जेनरेटर विधि को कॉल करेंगे तो आपको यादृच्छिक संख्याओं के अलग-अलग क्रम मिलेंगे।

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

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

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

Copyright© 2022 湘ICP备2022001581号-3