नामक एक ही संख्या देता है, मैं हर बार अपनी रैंडम नम्बर विधि को मेरे लूप के भीतर से कॉल करने के लिए एक अलग यादृच्छिक संख्या उत्पन्न करने की कोशिश कर रहा हूं। अभी, यह हर बार एक ही संख्या देता है।RandomNumber विधि हर बार
यह मेरा RandomNumber विधि है:
private int RandomNumber(int min, int max)
{
Random random = new Random();
return random.Next(min, max);
}
इस संदर्भ मैं में यह उपयोग कर रहा हूँ है: (यह थोड़ा जटिल सिर्फ इसलिए कि मैं यह काम करने के लिए प्राप्त करने की कोशिश के साथ खिलवाड़ किया गया है है ....)
for (int i = 0; i < charsRaw.Length; i++)
{
int max = charsRaw.Length - 1;
int rand = 0;
rand = RandomNumber(0, max);
charsNew[i] = charsRaw[rand];
text2 += charsNew[i];
}
मुझे लूप के साथ हर बार एक अलग मूल्य वापस करने के लिए प्रतीत नहीं होता है।
हालांकि, जब मैं text2 + = charsNew [i] के बाद एक संदेशबॉक्स दिखाता हूं। (Rand.ToString()), यह मुझे हर बार एक अलग मूल्य देता है और जिस तरह से मैं चाहता हूं उसका काम करता है। अजीब।
धन्यवाद! एरिक
धन्यवाद! यह काम किया! – Eric
अंतिम पैराग्राफ थोड़ा भ्रामक है। नया रैंडम() बिल्कुल वही करता है, जो कि वर्तमान समय के साथ जनरेटर को बीजिंग करता है। चूंकि आप इसे एक तंग पाश के भीतर करते हैं, इसलिए आपको कई समान उदाहरण मिल रहे हैं, जो निश्चित रूप से समान अनुक्रम उत्पन्न करते हैं। वर्तमान समय के साथ मैन्युअल रूप से बीजिंग चीजों को बेहतर बनाने के लिए काम नहीं करता है। इसके अलावा, आपको उन बीजों में बहुत अधिक रैखिक निर्भरता मिलेगी जो अधिकांश जेनरेटर (सीएफ। Http://portal.acm.org/citation.cfm?doid=1276927.1276928) – Joey
अच्छी कॉल में यादृच्छिकता के लिए एक बुरी चीज है। मैं संपादित करूंगा। – anthony