Buenas de nuevo Rafael. Te devuelve la mitad xq estas comparando la longitud
de la matriz con la i del bucle for, date cuenta q a la mitad de la
operación cada una vale 5, y el bucle termina. Has de almacenar simplemente
la longitud total del Array para ejecutar asi el bucle completo.

Te quedaria asi :

<code>

function RandomExcluyente(a, b) {
 var listaNumero:Array = new Array();
 for (var i = a; i<=b; i++) {
  listaNumero.push(i);
 }
 var totalLength:Number = listaNumero.length;
 for (var i = 0; i<totalLength; i++) {
  var numRandom:Number = random(listaNumero.length);
  var numSelect:Number = listaNumero[numRandom];
  trace(numSelect);
  listaNumero.splice(numRandom, 1);
 }
 trace("-----------------");
}
RandomExcluyente(1, 10);

</code>

Un saludo !!

Fede.


El 8/11/05 12:45, "Rafael Martinez-AsNativo" <[EMAIL PROTECTED]>
escribió:

> Muchas gracias a todos!!!!
> A pesar de que trabajo solo en casa, me siento parte de un gran equipo :)
> Bueno no se donde tendrá Manu ese venerado código....:), pero estoy tratando
> de sacarlo ... aunque no me funciona ya que me devuelve la mitad de
> resultados:
> <code>
> function RandomExcluyente(a, b) {
>  var listaNumero:Array = new Array();
>  for (var i = a; i<=b; i++) {
>   listaNumero.push(i);
>  }
>  for (var i = 0; i<listaNumero.length; i++) {
>   var numRandom:Number = Math.round(listaNumero.length*Math.random());
>   var numSelect:Number = listaNumero[numRandom];
>   trace(numSelect);
>   listaNumero.splice(numRandom, 1);
>  }
>  trace("-----------------");
> }
> RandomExcluyente(1, 10);
> </code>
> Gracias
> ---------------------------------------------
> Rafael Martínez
> [ www.fabricanet.com ]
> ---------------------------------------------
> 
> 
> 
> ----- Original Message -----
> From: "Manuel de la Higuera" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Tuesday, November 08, 2005 11:34 AM
> Subject: RE: [ASNativos] Rango aleatoreo sin repetición
> 
> 
> Realmente es:
> if (colega.hasDonated()) sorteo.setWinner(colega);
> 
> Y eso que auditamos el código...
> 
> M.
> 
> 
>> -----Mensaje original-----
>> De: [EMAIL PROTECTED]
>> [mailto:[EMAIL PROTECTED] En nombre de Juan V. Delgado
>> Enviado el: martes, 08 de noviembre de 2005 11:24
>> Para: [email protected]
>> Asunto: Re: [ASNativos] Rango aleatoreo sin repetición
>> 
>> Joer, Manu tiene uno hecho que utiliza para todos los sorteos
>> de 5dms...
>> sólo tienes que quitarle la propiedad:
>> 
>> array.queLeToqueCosaMolonaAColega = false;
>> 
>> y listo....
>> 
>> ñ_ñ
>> 
>> --------- Mensaje Original --------
>> De: [email protected]
>> Para: [email protected] <[email protected]>
>> Asunto: Re: [ASNativos]  Rango aleatoreo sin repetición
>> Fecha: 08/11/05 12:15
>> 
>>> 
>>> 1-. Creas el array con los 100 numeros 2-. Seleccionas un elemento
>>> aleatorio del array con el elemento random 3-. Sacas el
>> elemento del
>>> array con el método splice
>>> 
>>> esto con as1...si alguien sabe una manera mas clasista de
>> hacerlo ;-)
>>> 
>>> Un saludo
>>> 
>>> ----------------------------------
>>> Lista ASNativos:[email protected]
>>> http://www.5dms.com/listas
>>> ----------------------------------
>>> 
>> 
>> ----------------------------------
>> Lista ASNativos:[email protected]
>> http://www.5dms.com/listas
>> ----------------------------------
>> 
> 
> ----------------------------------
> Lista ASNativos:[email protected]
> http://www.5dms.com/listas
> ----------------------------------
> 
> 
> ----------------------------------
> Lista ASNativos:[email protected]
> http://www.5dms.com/listas
> ----------------------------------
> 


----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------

Responder a