Recherche…


Entier de base aléatoire

La fonction arc4random_uniform() est la manière la plus simple d’obtenir des nombres entiers aléatoires de haute qualité. Selon le manuel:

arc4random_uniform (upper_bound) renverra un nombre aléatoire uniformément distribué inférieur à upper_bound.

arc4random_uniform () est recommandé sur les constructions comme '' arc4random ()% upper_bound '' car il évite le "biais modulo" lorsque la limite supérieure n'est pas une puissance de deux.

uint32_t randomInteger = arc4random_uniform(5); // A random integer between 0 and 4

Entier aléatoire dans une plage

Le code suivant illustre l'utilisation de arc4random_uniform() pour générer un entier aléatoire compris entre 3 et 12:

uint32_t randomIntegerWithinRange = arc4random_uniform(10) + 3; // A random integer between 3 and 12

Cela permet de créer une plage car arc4random_uniform(10) renvoie un entier compris entre 0 et 9. L'ajout de 3 à cet entier aléatoire produit une plage comprise entre 0 + 3 et 9 + 3 .



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow