generate random number in a range c++ -
इस सवाल का पहले से ही एक उत्तर है: < / P>
- 4 जवाब
मैं ncurses का उपयोग कर रहा हूँ एक खेल बनाने के लिए पुस्तकालय मुझे सही यादृच्छिक संख्या उत्पन्न करने में समस्या आ रही है। जबकि नीचे लूप को यादृच्छिक संख्या उत्पन्न करने की आवश्यकता होती है जब तक कि वे 1 से 45 के बीच न हों (यह मानक स्क्रीन पर मेरी y- अक्ष सीमाएं है)। मैं समझ नहीं सकता कि मैं क्या कर रहा हूं क्योंकि चूंकि लूप की स्थिति मेरे लिए ठीक लगती है समस्या यह है कि जब लूप अनन्त रूप से चलना शुरू होता है मैं कुछ भी नहीं कर रहा हूं, लेकिन अंत में उत्पन्न संख्याओं को छपाई कर रहा हूं क्योंकि मुझे यह देखना है कि सही संख्याएं उत्पन्न होती हैं। क्या कोई मुझे इस समस्या से मदद कर सकता है? निम्नलिखित मेरा int मुख्य है
int main () {int r, c, x = 0; initscr (); कच्चा(); कीपैड (एसटीएससीआर, सच); noecho (); // mvprintw (22,45, "& LT;"); getmaxyx (stdscr, आर, ग); इंट एन, एन 2 = 0; जबकि ((n & lt; 1) || (n & gt; 45)) {srand (समय (नल)); N = रैंड (); Srand (समय (नल)); N2 = रैंड (); } Mvprintw (4,10, "प्रथम रैंडम संख्या:% d \ n", n); Mvprintw (5,10, "दूसरा यादृच्छिक संख्या:% d \ n", n2); getch (); endwin (); वापसी 0; }
आप
srand को कॉल करना चाहते हैं चीजों की शुरुआत में और फिर अपनी सीमा में
रैंड परिणाम लाने के लिए मापांक का उपयोग करें, जैसे कुछ:
srand (समय (नल)); N = रैंड ()% 45 + 1; एन 2 = रैंड ()% 45 + 1;
Comments
Post a Comment