AD

¿Ya dominas lo básico? Un curso estructurado de Objective-C es la vía rápida para dar el salto.

Ver cursos de Objective-C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🍎Lecciones de Objective-C
Lección 53 / 68

Generar números aleatorios

En esta lección obtendrás valores impredecibles.

arc4random_uniform(6) devuelve un número entre 0 y 5, así que sumando uno se obtiene una tirada de dado.

El código de ejemplo simula una tirada y una jugada de piedra, papel o tijera. El resultado cambia cada vez: la salida de referencia es solo una de las posibles.

La elección de la función importa. La antigua rand() % 6 tiene dos problemas: hay que inicializarla con una semilla, y el módulo introduce un sesgo que hace algunos valores más probables que otros. arc4random_uniform no necesita semilla y reparte de forma uniforme, y por eso es la recomendada en el mundo de Apple.

Fíjate en (uint32_t)choices.count: la función espera ese tipo concreto, y sin la conversión el compilador avisa. Es otra muestra del cuidado con los tipos que exige el lenguaje.

Para seguridad —contraseñas, tokens, claves— existe SecRandomCopyBytes. Y como arc4random no admite semilla, para pruebas reproducibles hay que inyectar un generador propio.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Objective-C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)