java - Trouble getting a card shuffle method to work -


यहाँ समस्या का वर्णन है:

"शफल विधि कार्ड ऑब्जेक्ट्स की सरणी को घसीट देती है एक बार में कार्ड ऑब्जेक्ट्स की एक सरणी के माध्यम से पाशन करके और एक्सचेंजिंग (सरणी व्याख्यान के स्लाइड 62-63 देखें) कार्ड के साथ उस स्थिति में कार्ड को यादृच्छिक स्थिति में (जैसा कि एक रैंडम नंबर द्वारा निर्धारित किया गया है) 0 और 51 के बीच । "

मैंने उपर्युक्त करने के लिए नीचे कोड लिखा है, लेकिन यह मेरी कार्ड ऑब्जेक्ट्स को फेरबदल नहीं कर रहा है।

  सार्वजनिक शून्य फेरबदल () {/ / अगले कार्ड को रीसेट करें। अगले कार्ड = 0; यादृच्छिक randomGen = नया रैंडम (); कार्ड अस्थायी कार्ड; Int randomNum = randomGen.nextInt (DECK_SIZE); Int i; के लिए (i = 0; i & lt; DECK_SIZE; i ++) {tempCard = डेक [i]; डेक [आई] = डेक [यादृच्छिक]; डेक [यादृच्छिक] = tempCard; } // के लिए अंत। } // अंत फेरबदल ()  

समस्या क्या है और मैं इसे कैसे ठीक करूं?

पीएस मैं अनुरोध पर कंसोल आउटपुट पोस्ट करूंगा।

आप randomNum को for loop के प्रत्येक चलन के लिए उत्पन्न करना चाहिए

इस तरह से अपने पाश को फिर से लिखना आपको अपेक्षित परिणाम देगा,

  int randomNum; Int i; के लिए (i = 0; i & lt; DECK_SIZE; i ++) {randomNum = randomGen.nextInt (DECK_SIZE); TempCard = डेक [आई]; डेक [आई] = डेक [यादृच्छिक]; डेक [यादृच्छिक] = tempCard; } // के लिए अंत।  

Comments

Popular posts from this blog

scala - Play Framework - how to bind form to a session field -

c++ - Why does Visual Studio Release build break on non-executing code line -

javascript - parsing json not working -