IOS 9 और OS X 10.11 के रूप में, आप विभिन्न तरीकों से यादृच्छिक संख्या उत्पन्न करने के लिए नई GameplayKit कक्षाओं का उपयोग कर सकते हैं।
आपके पास चुनने के लिए चार स्रोत प्रकार हैं: एक सामान्य यादृच्छिक स्रोत (अनाम नाम, यह चुनने के लिए सिस्टम के नीचे), रैखिक बधाई, ARC4 और Mersenne ट्विस्टर। ये यादृच्छिक ints, फ़्लोट्स और बूल उत्पन्न कर सकते हैं।
सबसे सरल स्तर पर, आप सिस्टम के अंतर्निहित यादृच्छिक स्रोत से इस तरह एक यादृच्छिक संख्या उत्पन्न कर सकते हैं:
NSInteger rand = [[GKRandomSource sharedRandom] nextInt];
यह -2,147,483,648 और 2,147,483,647 के बीच एक संख्या उत्पन्न करता है। यदि आप 0 और एक ऊपरी बाउंड (अनन्य) के बीच एक संख्या चाहते हैं, तो आप इसका उपयोग करेंगे:
NSInteger rand6 = [[GKRandomSource sharedRandom] nextIntWithUpperBound:6];
गेमप्लेकिट में पासे के साथ काम करने के लिए कुछ सुविधा निर्माणकर्ता हैं। उदाहरण के लिए, आप इस तरह से छह-पक्षीय मर सकते हैं:
GKRandomDistribution *d6 = [GKRandomDistribution d6];
[d6 nextInt];
साथ ही आप चीजों का उपयोग करके यादृच्छिक वितरण को आकार दे सकते हैं GKShuffledDistribution
।
arc4random_uniform(x)
नीचे वर्णित @yood द्वारा उपयोग करें । यह stdlib.h में भी है (OS X 10.7 और iOS 4.3 के बाद) और यादृच्छिक संख्याओं का अधिक समान वितरण देता है। उपयोगint r = arc4random_uniform(74);