Ayuda numero aletorio no repetirse

Iniciado por x64core, 23 Mayo 2011, 00:15 AM

0 Miembros y 1 Visitante están viendo este tema.

x64core

#10
Cita de: _katze_ en 23 Mayo 2011, 02:20 AM
generas el numero en primera medida...y la guardas en una variable termporal...en una iteracion recorres el vector si esta salis de la iteracion y generas de nuevo...y si esta lo guardas y lo mostras

amigo si ese era error en mi code q no salia del for le agrege exit for pero luego no encontre lo demas :/

@XXX-ZERO-XXX

:o  ;D  gracias XXX-ZERO-XXX  se te agradece mucho si funciona exactamente!  ;-)

raul338

Fijate bien como hace, aunque si bien hay otras formas de hacerlo :)

Se me ocurre hacer un array del 1 al 10 con respectivos valores, y despues con un bucle ir devolviendolos en forma desordenada siempre y cuando el valor a devolver no sea 0, controlandolo con un contador de los numeros devueltos. Seria buen ejercicio ;)

BlackZeroX

#12
.
Me se ocurre aplicar el dicho Divide y Vencerás xP.


NumerosAleatorios (Numero Inicio, Numero Final, Array de valores a no considerar) {
MatrixRangos() = Realizar una búsqueda de valores para verificar si alguno de los numeros del array estan entre el valor de Inicio o el valor del Final: (un For Next bastara) , y generamos cortes de array's por ejemplo (  Inicio=0 final=10 array={5,8}  este paso genera 3 array que son:  {0,4},{6,7},{9,10} )
iIndice = Generamos un numero aleatorio desde Lbound(MatrixRangos()) hasta Ubound(MatrixRangos())
Retornamos el numero que se genera un numero aleatorio según los rangos que indique MatrixRangos( iIndice )(0) y MatrixRangos( iIndice )(1)
}


@XXX-ZERO-XXX

Código (vb,5) [Seleccionar]


Function Existe(m As Integer, a() As Integer) As Boolean
Dim num
For Each num In a()
If (m = num) Then Existe = True: exit for ' // no tiene caso seguir en el for Each si ya se encontro.
Next
End Function



P.D.: No hice el codigo por que me tengo que ir a bañar xP ya lo hago.

Temibles Lunas!¡.
.
The Dark Shadow is my passion.

Edu

Cita de: Raul100 en 23 Mayo 2011, 02:33 AM
amigo si ese era error en mi code q no salia del for le agrege exit for pero luego no encontre lo demas :/

@XXX-ZERO-XXX

:o  ;D  gracias XXX-ZERO-XXX  se te agradece mucho si funciona exactamente!  ;-)

Bueno pero lee el codigo, entendelo, fijate que use for-next, foreach-next, do-loop while, aprendelos bien.

Y black.. si.. se me paso eso pero si el codigo lo hice rapido, no pretendia optimizar velocidad xD Pero es buen consejo para el que pregunta ;)

79137913

#14
HOLA!!!

xxxZEROxxx, Indesta el codigo, se lee mejor asi, y no es necesario un Do loop, se puede hacer con for, editando el valor de las variables del for XD.

Raul100, viendo tu manera de pensar, arme este codigo que funciona con tu estructura:
Código (vb) [Seleccionar]
Dim A(9) As Long
Dim X As Long
Dim Y As Long
   Randomize
   For X = 0 To 9
       A(X) = Int(Rnd() * 10) + 1
       For Y = 0 To 9
           If A(X) = A(Y) And Y <> X Then X = X - 1: Exit For
       Next
   Next


GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

Edu

Otro que me corrige.. yo se que son muchos mejores ustedes pero dejenme contestar una aunquesea que siempre me ganan de mano jaja, con lo que yo le puse entenderá bien y aprendera esos bucles que se ve que no los conocia.

79137913

HOLA!!!

Cita de: XXX-ZERO-XXX en 23 Mayo 2011, 20:13 PM
Otro que me corrige.. yo se que son muchos mejores ustedes pero dejenme contestar una aunquesea que siempre me ganan de mano jaja, con lo que yo le puse entenderá bien y aprendera esos bucles que se ve que no los conocia.

Sorry, no quise molestar :P

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

BlackZeroX

.
Por si acaso ya hice una funcion Extentidad para generar un Numero Aleatorio, sin usar los For Nexthttp://foro.elhacker.net/programacion_visual_basic/source_numeros_aleatorio_desde_x_a_y_con_esecciones-t328566.0.html

Temibles Lunas!¡.
The Dark Shadow is my passion.

x64core

Cita de: 79137913 en 23 Mayo 2011, 21:15 PM
HOLA!!!

Sorry, no quise molestar :P

GRACIAS POR LEER!!!

:O :O :O muy buen codigo panaa y muy simplificado gracias!! :D