Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/09/2010, 14:25
okawa
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 15 años
Puntos: 0
entero aleatorio distribucion uniforme

Consigo crear una secuencia de 5 numeros aleatorios,pero puede darse el caso que se repitan.

Lo que quiero es una secuencia aleatoria de 5 numeros entre el [1 y 5] pero que no se repitan.

Código PHP:
/** Devuelve un valor entero aleatorio en el intervalo [a,b]
   *  con distribución uniforme.
   */
   
public static int aleatorio(int aint b) {
    
// Devuelve un número aleatorio entre a y b.
    
int numaleatorio = (int) (Math.random()*(a-b))+b;
    return 
numaleatorio;
  }
//Fin de aleatorio 
Código PHP:
  /** Devuelve un array de enteros con una permutación aleatoria
   * (distribución uniforme) de los valores 1,2,3,...,cant.
   */
  
public static int[] generaArrayAleatorio(int cant) { //int cant=5
      
int array[]=new int[cant];
      for (
int i=0;i<array.length;i++) {
        array[
i]=aleatorio(5,1);
      }
      return array;
  }
//Fin de generaArrayAleatorio