Visual Basic - Crear números aleatorios en Visual Vasic

Life is soft - evento anual de software empresarial
 
Vista:

Crear números aleatorios en Visual Vasic

Publicado por David (1 intervención) el 03/08/2019 20:11:34
Hola,
Sé que para crear números aleatorios en Visual basic hay que utilizar la función RND(), pero lo que quiero hacer es que cada vez que ejecute el programa me genere un número distinto, ya que siempre me aparece el mismo número
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Hector Madriz
Val: 14
Ha aumentado su posición en 4 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por Hector Madriz (3 intervenciones) el 04/08/2019 02:13:17
Buen día, podrías guardarlo en (BBDD, Vector, archivo txt, etc) si ya existe lo vuelva a generar.
...es difícil que se repita continua e inmediatamente y aun mas si el intervalo es amplio.

1
Int(Rnd() *1000)

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por gilman (359 intervenciones) el 04/08/2019 08:17:14
Pon el código, ya que salvo que uses Randomize Semilla es practicamente imposible que se repita la secuencia de números aleatorios generados por Rnd en varias ejecuciones de la aplicación
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por gilman (359 intervenciones) el 04/08/2019 10:18:20
El problema de David no es generar números aleatorios distintos durante la ejecución del programa, dice que siempre que ejecuta el programa la función Rnd genera el mismo número.
Esto último es practicamente imposible, ya que salvo que inicialice la secuencia de números aleatorios con Randomize Semilla, se usa el tiempo de encendido del PC para generar la secuencia de números aleatorios.
Por eso le dígo que ponga el código, ya que algo debe estar mal
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Cris
Val: 405
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por Cris (27 intervenciones) el 04/08/2019 10:39:31
Aclarado.

Aprovecho para preguntarte si me puedes explicar que es Randomize Semilla. Es la primera vez que escucho esa expresión.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de gilman
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por gilman (359 intervenciones) el 04/08/2019 10:51:51
Si ejecutas Randomize Semilla con Semilla un número, la secuencia de números aleatoria sera siempre la misma para la misma Semilla, por ejemplo, cada vez que ejecutes:
1
2
3
4
5
6
7
Private Sub Form_Load()
    Dim i As Long
    Randomize 1
    For i = 1 To 4
        Debug.Print Rnd
    Next i
End Sub

siempre obtendrás:
0,7648737
0,1054455
0,6134542
0,9377558
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Cris
Val: 405
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Crear números aleatorios en Visual Vasic

Publicado por Cris (27 intervenciones) el 04/08/2019 11:16:51
Gracias por la explicación gilman.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar