Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: tazzmk en 21 Diciembre 2007, 01:18 am



Título: Ramdom en VB
Publicado por: tazzmk en 21 Diciembre 2007, 01:18 am
Segun:

La función Rnd o Random posee la virtud de obtener números aleatorios entre 0 y 1:

El único inconveniente a la hora de usar Rnd, es que hay que inicializarlo, en otro caso,
el resultado de la función Rnd, será siempre el mismo dentro de un determinado ordenador.
Por ejemplo, el código:


Private Sub Form_Load()
Dim Num As Double
Num = Rnd
MsgBox Num
End Sub

Nos daría como resultado siempre el mismo número.

Para solucionar este problema, debemos escribir la sentencia Randomize antes de llamar
a la función Rnd. De esta manera, la función Rnd actuará correctamente.

El código quedaría así:


Private Sub Form_Load()
Dim Num As Double
Randomize
Num = Rnd
MsgBox Num
End Sub

(http://s1.subirimagenes.com/imagenes/previo/thump_1737359imagen01.png)

como lo puedo hacer?
que haga al presionar el boton, genere un numero, pero que sea 1 al 99
pero que nunca se repita, saludos


Título: Re: Ramdom en VB
Publicado por: papanoel_devacaciones en 21 Diciembre 2007, 01:27 am
Código
  1. Randomize
  2. Tex1.Text = Int(Rnd * 98 + 1)


Saludos


Título: Re: Ramdom en VB
Publicado por: SKL (orignal) en 21 Diciembre 2007, 04:39 am
aca tenes algo mejorcito y mas completo, asi no se repiten los numeros...


http://www.classicvisualbasic.com/descargas/download.php?file=13


saludos!


Título: Re: Ramdom en VB
Publicado por: Mad Antrax en 21 Diciembre 2007, 11:57 am
Código
  1. Randomize
  2. Tex1.Text = Int(Rnd * 98 + 1)


Saludos
Eso es incorrecto, la solución:

Código
  1. Randomize
  2. Tex1.Text = Int(Rnd * 99 + 1)