[SOLUCIONADO]Problema con FOR

Iniciado por THANAT0S, 10 Febrero 2011, 13:57 PM

0 Miembros y 2 Visitantes están viendo este tema.

THANAT0S

Antes que nada, buenas gente!! Soy bien nuevito en el foro (y en java XD), para practicar estoy haciendo un simple tirador de Dados en Java con Netbeans. Y tengo el siguiente problema:

Código (java) [Seleccionar]
public static String Randomize(String cantidad, int caras) {
       Random random = new Random();
       int resu = 0; // RETURN SIEMPRE ME DEVUELVE EL VALOR QUE LE ASIGNO AQUÍ A RESU
       int dados = Integer.parseInt(cantidad);
       for (int i = 1; i>dados; i++) {
           int tirada = random.nextInt(caras) + 1;
           resu = resu + tirada;
       }
       return (String.valueOf(resu));


Ese es el codigo para generar un numero random entre 1 y caras, donde caras es la cantidad de caras del dado. Al momento de llamar a esa clase, la variable cantidad viene de un textfield por eso es String. y Caras como son valores fijos ya son int. El problema está en que no sé por qué no ingresa nunca al FOR. No tira error ni nada, pero no veo donde esta mal el código que hace que el FOR nunca se ejecute. Por esa razón el return siempre me devuelve 0 o el valor que con el que inicializo la variable.

Desde ya muchas gracias por las respuestas :)

Saludos!

JungleBoogie

Con esto a mi me funciona:

    public static int Randomize(String cantidad, int caras)
    {
        int resu = 0;
        int dados = Integer.parseInt(cantidad);
        int i;
        for (i=0;i<dados;i++)
            resu += (int)(Math.random()*caras) + 1; // el +1 es para evitar que salga 0
        return resu;
    }


Devuelve un entero en vez de String.

THANAT0S

Hola! gracias!! :) igual, ya encontré el error en mi código... :S es que el for tenía mal la condición, estaba > en vez de < XD.

Ya sé puede cerrar, ahora le pongo el solucionado al post. Gracias!!