Foros del Web » Creando para Internet » Flash y Actionscript »

Desordenar una matriz

Estas en el tema de Desordenar una matriz en el foro de Flash y Actionscript en Foros del Web. Hola, os explico, tengo un array que hacen referencia a las respuestas posibles a una pregunta, y siempre el 1er valor de la matriz es ...
  #1 (permalink)  
Antiguo 05/07/2007, 04:51
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 640
Antigüedad: 14 años, 2 meses
Puntos: 2
Desordenar una matriz

Hola, os explico, tengo un array que hacen referencia a las respuestas posibles a una pregunta, y siempre el 1er valor de la matriz es la respuesta verdadera... cómo podría hacer para que me cambiase aleatoriamente el orden de los valores en l amatriz??

he intentado con array.sort(), pero no veo manera de ordenar aleatoriamente... alguien que me eche un cable, plis ^_^

Saaaaaaalu2!!!
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #2 (permalink)  
Antiguo 05/07/2007, 12:25
 
Fecha de Ingreso: mayo-2006
Mensajes: 77
Antigüedad: 11 años, 6 meses
Puntos: 1
Re: Desordenar una matriz

Prueba esto:

Cita:
function que() {
return (Math.random()>.5) ? 1 : 0;
}
tuArray.sort(que);
Un saludo
  #3 (permalink)  
Antiguo 06/07/2007, 01:29
Avatar de X3mdesign  
Fecha de Ingreso: octubre-2003
Ubicación: Madrid
Mensajes: 640
Antigüedad: 14 años, 2 meses
Puntos: 2
Re: Desordenar una matriz

Eureka!!! muchas gracias roceth!!! y si me lo explicases un poco ya lo bordarías ;)
__________________
Nippon-Tour, tu portal sobre Japón
¿Te gusta el manga, haces tus propios dibujos? Visita FanArt de Nippon-Tour
  #4 (permalink)  
Antiguo 06/07/2007, 05:00
 
Fecha de Ingreso: mayo-2006
Mensajes: 77
Antigüedad: 11 años, 6 meses
Puntos: 1
Re: Desordenar una matriz

Ops. Lo intentaré.

El método 'sort()' ofrece una función de comparación a la que se llama con todas las combinaciones posibles de sus variables:

Cita:
var tuArray:Array = new Array("uno", "dos","tres","cuatro","cinco");
function que(a,b) {
trace(a+" "+b);
}
tuArray.sort(que);
Ademas, si la función devuelve un 1 cambiará (uno por otro) los dos valores pasados.
Esto es ideal para funciones de ordenación, comparación, busqueda...

En este caso el cambio depende de 'Math.random()>.5', osea 1 de cada 2 veces aleatoriamente.

Espero haberme explicado...
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 08:10.