Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Funcion para desordenar un array en Visual Basic

Estas en el tema de Funcion para desordenar un array en Visual Basic en el foro de Visual Basic clásico en Foros del Web. Hola a todos. Resulta que tengo que obtener 'x' elementos aleatorios de un array y he llegado a la conclusión de que, mejor que obtener ...
  #1 (permalink)  
Antiguo 02/06/2004, 05:13
Avatar de Pip
Pip
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 280
Antigüedad: 20 años, 5 meses
Puntos: 0
Pregunta Funcion para desordenar un array en Visual Basic

Hola a todos.

Resulta que tengo que obtener 'x' elementos aleatorios de un array y he llegado a la conclusión de que, mejor que obtener índices aleatorios, comprobar que ese número aleatorio no salió antes, etc... es usar una función que desordene un array y coger los 'x' primeros índices.

No sé si el método que propongo es el que se usa normalmente o si tiene algún inconveniente por el cual no se usa pero, desde que en php descubrí la función que hace esto, no creo que vuelva a usar funciones para números aleatorios más que cuando sea estrictamente necesario.

Ahora bien, si existe una función que haga esto en Visual Basic, lo desconozco. Tengo instaladas las msdn pero acabo por buscar siempre en google porque no suelo encontrar todo lo que busco y menos fácilmente...

Si alguien me puede decir si existe tal función o si está implementada en alguna parte, os lo agradeceré y, sino, también (aunque sin duda lo agradeceré más si respondeis afirmativamente )
__________________
por Pip
  #2 (permalink)  
Antiguo 02/06/2004, 05:32
Avatar de jarabas
Usuario no validado
 
Fecha de Ingreso: abril-2004
Mensajes: 111
Antigüedad: 20 años
Puntos: 0
Buenas.
No se si te valdra de mucho pero de algo espero que si.
La instruccion se llama randomize que genera valores aletorios en un intervalo que le indiques.
Mediante un bucle coges X las posiciones del array de los numeros devueltos por la instrucción randomize,
Con esto creo que consigas coger resultados aleatorios del array

Un saludo.
  #3 (permalink)  
Antiguo 02/06/2004, 07:17
Avatar de Pip
Pip
 
Fecha de Ingreso: noviembre-2003
Ubicación: Málaga
Mensajes: 280
Antigüedad: 20 años, 5 meses
Puntos: 0
No es que no me valga jarabas, de hecho agradezco que hayas respondido pero, precisamente por eso ponía el ejemplo del php. En php hay una función llamada rand() que hace lo que tú dices que hace randomize (bueno, realmente hay que usarla de manera mínimamente distinta pero el fin ya sabemos que es el mismo, obtener números aleatorios dentro de un rango determinado), sin embargo existe una función llamada shuffle() (hablo de php) que recibe un array y te cambia el orden de sus elementos, con lo cual si te fijas, te ahorras el comprobar si el número aleatorio generado ahora no lo fue ya antes.

Ya tengo creada una función que me genera tantos números aleatorios como yo le diga en el rango que yo quiera pero, creo que sería interesante también el poder usar funciones de visual basic que ya existan y no tener que crearlas yo casi todas.

Y quizás no busco demasiado bien en las msdn pero sigo pensando que en ese aspecto son muy limitadas.

Lo dicho, gracias
__________________
por Pip
  #4 (permalink)  
Antiguo 02/06/2004, 08:29
Avatar de jarabas
Usuario no validado
 
Fecha de Ingreso: abril-2004
Mensajes: 111
Antigüedad: 20 años
Puntos: 0
Lamento que no te haya servido de mucho, encambio lo de shuffle no sabia de su existencia. Y me va a valer para como tu dices aorrarme la comprobación de que no sean los mismos numeros que ya habia generado.

Gracias

Esto es lo que tienen los foros que entras intentando ayudar y en ocasiones como ésta, aprendes casi más que enseñas.

Un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:07.