Número aleatorio de rubí

Zeeshan Afridi 21 junio 2023
  1. Crear números aleatorios en Ruby
  2. Usa rand() para generar números aleatorios en Ruby
  3. Use Kernel#srand para sembrar el generador de números aleatorios
  4. Crear una cadena aleatoria en Ruby
  5. Conclusión
Número aleatorio de rubí

Este artículo explicará cómo crear números aleatorios en Ruby.

Crear números aleatorios en Ruby

Hay algunas formas diferentes de generar números aleatorios en Ruby.

  1. Utilizando el método rand().
  2. El método Kernel#srand se utiliza para generar el generador de números aleatorios.

El método rand() genera un flotante aleatorio entre 0 y 1. Esto puede ser útil para generar números aleatorios para simulaciones o juegos.

El método rand() se utiliza junto con el método floor para generar un número entero aleatorio. Esto devolverá un número entero aleatorio entre 0 y el número pasado al método de suelo.

Por ejemplo, el fragmento de código siguiente genera un número entero aleatorio entre 0 y 10.

rand(10).floor

Finalmente, el método srand() se puede utilizar para sembrar el generador de números aleatorios. Esto es útil si desea desarrollar la secuencia exacta de números aleatorios en varias ejecuciones del programa.

Usa rand() para generar números aleatorios en Ruby

El método rand() es una forma popular de generar números aleatorios en programación. Es un método simple que utiliza un algoritmo para generar un número pseudoaleatorio entre 0 y 1.

Luego, este número se multiplica por el rango deseado y se redondea al entero más cercano para obtener el resultado final.

El método rand() se usa a menudo en juegos y simulaciones para crear un entorno realista e impredecible. También se utiliza en muestreo estadístico y análisis de datos.

Si desea hacer un número aleatorio entre 0 y 10, puede usar el método rand como este.

Ejemplo de código:

rand(10)
puts rand(10)

Producción :

5

El siguiente ejemplo genera un número aleatorio entre 1 y 10 utilizando el método rand().

Ejemplo de código:

rand(1..10)
puts rand(1..10)

Producción :

6

Use Kernel#srand para sembrar el generador de números aleatorios

También puede usar el método Kernel#srand para sembrar el generador de números aleatorios, lo que le brinda más control sobre los números aleatorios generados. Cuando se llama con una semilla, el método Kernel#srand siembra el generador de números aleatorios, lo que hace posible generar secuencias repetibles de números aleatorios.

Si no se proporciona semilla, el generador se inicializa con una combinación de tiempo, el ID del proceso y un número de secuencia. Llamar a Kernel#srand con la semilla idéntica siempre generará la misma secuencia de números aleatorios.

Esto puede ser útil para depurar o crear simulaciones deterministas. Sin embargo, usar la misma semilla en producción generalmente es malo, ya que puede hacer que su aplicación sea más predecible y más fácil de explotar.

Si necesita generar secuencias repetibles de números aleatorios, generalmente es mejor usar una biblioteca que proporcione una API dedicada, como Mersenne Twister.

Ejemplo de código:

puts srand 1234
puts [rand, rand]

puts [rand(10), and(1000)]

puts srand 1234
puts [rand, rand]

Producción :

68269704279078804018695389408585286811
0.1915194503788923
0.6221087710398319
4
1000
1234
0.1915194503788923
0.6221087710398319

Crear una cadena aleatoria en Ruby

Hay algunas formas de generar cadenas aleatorias en Ruby. Una forma es utilizar el método Array.sample.

Este método seleccionará un elemento aleatorio de una matriz.

Ejemplo de código:

arr = ['a', 'b', 'c', 'd', 'e']
arr.sample
puts arr.sample

Producción :

c

Otra forma de generar cadenas aleatorias es utilizar el método SecureRandom.hex. Esto generará una cadena aleatoria de caracteres hexadecimales.

Ejemplo de código:

require 'securerandom'
inp=SecureRandom.hex(10)
puts inp

Producción :

e30c8046b7fac0627436

También puede usar el método SecureRandom#base64 para generar una cadena aleatoria de caracteres base64.

Ejemplo de código:

require 'securerandom'
inp=SecureRandom.base64(10)
puts inp

Producción :

kc8/UBu0aFA8eg==

Si necesita una cadena aleatoria de una longitud específica, puede usar el método SecureRandom#random_bytes. Esto generará una cadena aleatoria de bytes:

require 'securerandom'
inp=SecureRandom.random_bytes(10)
puts inp

Producción :

�gՙP0�n[

Finalmente, si necesita una cadena alfanumérica aleatoria, puede usar el método SecureRandom#urlsafe_base64.

Ejemplo de código:

require 'securerandom'
inp=SecureRandom.urlsafe_base64(10)
puts inp

Producción :

ce6gAf9EyVdPMA

Conclusión

El artículo concluye que el rand puede ser útil para generar números aleatorios en sus programas Ruby. El método toma un argumento opcional, el límite superior del rango de dígitos que se pueden generar.

Otro método es el Kernel#srand para sembrar el generador de números aleatorios. También puede crear una cadena aleatoria con el lenguaje Ruby.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn