Buscar..


Entero aleatorio basico

La función arc4random_uniform() es la forma más sencilla de obtener enteros aleatorios de alta calidad. Según el manual:

arc4random_uniform (upper_bound) devolverá un número aleatorio distribuido uniformemente menos que upper_bound.

Se recomienda arc4random_uniform () sobre construcciones como '' arc4random ()% upper_bound '', ya que evita el "sesgo de módulo" cuando el límite superior no es una potencia de dos.

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

Entero aleatorio dentro de un rango

El siguiente código demuestra el uso de arc4random_uniform() para generar un entero aleatorio entre 3 y 12:

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

Esto funciona para crear un rango porque arc4random_uniform(10) devuelve un número entero entre 0 y 9. Agregar 3 a este número entero aleatorio produce un rango entre 0 + 3 y 9 + 3 .



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow