Números Aleatorios
Hola, soy nuevo en esto de Visual, quisiera hacer una combinación de números aleatorios del 1 al 49, para poderlos presentar en 49 Label, pero el problema es que en alguna Label se me presenta el mismo número.
Donde está el ERROR, o que tendrÃa que cambiar.
Private Sub lblgenerar_Click()
Dim i, Num As Integer
For i = 0 To 48
Randomize
Num = Int((49 - 1 + 1) * Rnd + 1)
Label1(i).Caption = Num
Next i
End Sub
Gracias, y saludos
Teo
Donde está el ERROR, o que tendrÃa que cambiar.
Private Sub lblgenerar_Click()
Dim i, Num As Integer
For i = 0 To 48
Randomize
Num = Int((49 - 1 + 1) * Rnd + 1)
Label1(i).Caption = Num
Next i
End Sub
Gracias, y saludos
Teo
dim num as integer, x as integer, y as integer
'se rellena la primera label con el 1er numero aleatorio
num= randomiza
label(0).caption= num
'se repite el bucle las 49 veces empezando por la 2ª label
for x= 1 to 49
'se recoge el numero
num= randomiza
'se lee desde 0 hasta la posicion donde estamos ke es x
for y=0 to x
'si el numero de la posicion de la x = numero de la posicion de la y
if label(x).caption = label(y).caption then
'se vuelve a randomizar y comenzamos el bucle otra vez
num= randomiza
x=1
else
'si son distintos los valores se pone el numero en la label y continua avanzando el bucle
label(x).caption= num
end if
next y
next x
'esto lo he echo en el bloc de notas porque no tengo el visual aqui, asi ke tendras
que poner bien la funcion del random ke no me acuerdo como iba.
'el funcionamiento basico del codigo es:
primero comparas con el primer numero si es diferente se keda ese numero y nos posicionamos en la siguiente label, sino
se vuelve al comienzo del bucle comprobando ke cada valor sea diferente.
espero ke ta haya servido de algo. si siguen las dudas escribeme a [email protected] y trataremos de solucionarlo.
'se rellena la primera label con el 1er numero aleatorio
num= randomiza
label(0).caption= num
'se repite el bucle las 49 veces empezando por la 2ª label
for x= 1 to 49
'se recoge el numero
num= randomiza
'se lee desde 0 hasta la posicion donde estamos ke es x
for y=0 to x
'si el numero de la posicion de la x = numero de la posicion de la y
if label(x).caption = label(y).caption then
'se vuelve a randomizar y comenzamos el bucle otra vez
num= randomiza
x=1
else
'si son distintos los valores se pone el numero en la label y continua avanzando el bucle
label(x).caption= num
end if
next y
next x
'esto lo he echo en el bloc de notas porque no tengo el visual aqui, asi ke tendras
que poner bien la funcion del random ke no me acuerdo como iba.
'el funcionamiento basico del codigo es:
primero comparas con el primer numero si es diferente se keda ese numero y nos posicionamos en la siguiente label, sino
se vuelve al comienzo del bucle comprobando ke cada valor sea diferente.
espero ke ta haya servido de algo. si siguen las dudas escribeme a [email protected] y trataremos de solucionarlo.