Comunidad de diseño web y desarrollo en internet online

Mostar valores de un vector aleatoriamente

Citar            
MensajeEscrito el 21 Feb 2007 08:42 pm
Hola chicos, soy Antonio
Necesito hacer un bucle para mostrar todos los elementos de un vector de forma aleatoria y que al final se muestren todos y no salga ninguno dos veces.

Este bucle ira dentro de un boton, de forma que cada vez que se presiona al boton aparece un elemento del vector.

Se hacerlo, pero me muestra elementos repetidos....
Muchas gracias....

Por aperez23

3 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Feb 2007 11:56 pm
Siendo tu_boton el boton y un_array un array cualquiera de numeros, cadenas, objetos, etc o mixto.
A cada llamada a la función mezclar() dará salida (return) en secuencia aleatoria de todos los elementos del array uno a uno sin repetir y al completarse, mezclara de nuevo y dará otra secuencia aleatoria del array... así continuamente a cada golpe de botón.

Este u otro similar para el botón:

Código :

tu_boton.onPress= function(){
   trace( mezclar(un_array));
}


Y esta función:

Código :

function mezclar(bar) {
   var m = bar.length-1;
   j == undefined  ? j = 0 : j = (j+1)%(m+1);
   if (j==0) {
      for (var i = m; i>1; i--) {
         alea = Math.floor(i*Math.random());
         temp = bar[i];
         bar[i] = bar[alea];
         bar[alea] = temp;
      }
   }
   return (bar[j]);
}

Nota: en el código del botón cambiar el trace por la acción deseada.

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox
Citar            
MensajeEscrito el 22 Feb 2007 08:17 am
Muchas gracias Teseo.
Funciona !!!!

Por aperez23

3 de clabLevel



Genero:Masculino  

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.