Foros del Web » Programación para mayores de 30 ;) » Java »

Problema tonto, random en java

Estas en el tema de Problema tonto, random en java en el foro de Java en Foros del Web. Hola tengo este metodo que hace un numero aleatorio y lo devuelve, numeros entre el 1 y el 5, quiero que los devuelva pero que ...
  #1 (permalink)  
Antiguo 01/10/2015, 03:28
Avatar de muchuelu93  
Fecha de Ingreso: noviembre-2013
Mensajes: 35
Antigüedad: 10 años, 4 meses
Puntos: 2
Exclamación Problema tonto, random en java

Hola tengo este metodo que hace un numero aleatorio y lo devuelve, numeros entre el 1 y el 5, quiero que los devuelva pero que no repita. Es decir, ahora me devuelve, por ejemplo, 3-2-5-2-3, y no quiero eso, quiero por ejemplo, que devuelva esto, 3-1-5-4-2.

Espero que me de a entender!

Código:
private int aleatori()
    {
        Integer[] alea = new Integer[5];
        int u=0;
        int y1=0;

        while(y1<5)
        {
            u=new Double(Math.random() * 5).intValue();
            if (alea[u] == null) 
            {
                alea[u] = y1++;
            }  
        }
        return u;
    }
  #2 (permalink)  
Antiguo 01/10/2015, 04:41
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: Problema tonto, random en java

https://www.google.es/webhp?sourceid...andom%20repita
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #3 (permalink)  
Antiguo 01/10/2015, 14:12
(Desactivado)
 
Fecha de Ingreso: marzo-2012
Mensajes: 366
Antigüedad: 12 años
Puntos: 31
Respuesta: Problema tonto, random en java

Tienes que meter a tu código una variable de control que te indique si el número generado aleatoriamente ya había sido generado anteriormente o no.

Por ejemplo puedes utilizar un Array booleano, con un true o un false para cada una de los 5 números que quieras generar.

Última edición por Kritik; 01/10/2015 a las 14:24

Etiquetas: metodo, random, repetir
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:33.