Generala.java 3.25 KB
Newer Older
Nahuel Mereles Rodriguez committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
package generala;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.io.File;

public class Generala {
    // ESTA ES LA FUNCIÓN QUE HAY QUE IMPLEMENTAR
// TAMBIÉN PUEDEN AGREGAR OTRAS FUNCIONES y/o CLASES
// QUE NECESITEN PARA RESOLVER EL EJERCICIO DE LA
// MANERA MÁS ORDENADA POSIBLE

String jugada(String dados) {
    // Este metodo recibe un String el cual lo utilizamos en el Switch, dependiendo de que sea elvalor del 
    // string se ejecutara uno u otro caso 
    switch (dados) {
        case "GENERALA" : {
            System.out.println("GENERALA");
            return "GENERALA";
        }
        case "POKER" : {
            System.out.println("POKER");
            return "POKER";
        }
        case "FULL" : {
            System.out.println("FULL");
            return "FULL";
        }
        case "ESCALERA" : {
            System.out.println("ESCALERA");
            return "ESCALERA";
        }
        default : {
            System.out.println("NADA");
            return "NADA";
        }
    }

}
// Ustedes pueden ignorar esto

String[] jugadas(String[] losdados) {
    String[] ret = new String[losdados.length];
    int i = 0;
    for (String dados : losdados) {
        ret[i] = this.jugada(dados);
        i++;
    }
    return ret;
}
// Ustedes pueden ignorar esto

static String[] processBatch(String fileName)
        throws Exception {
    Scanner sc = new Scanner(new File(fileName));
    List<String> lines = new ArrayList<String>();
    while (sc.hasNextLine()) {
        lines.add(sc.nextLine());
    }
    return lines.toArray(new String[0]);
}

public static void main(String[] args)
        throws Exception {
    Generala g = new Generala();
    /* IGNORAR PORQUE ESTO NO SE VA A EJECUTAR PARA USTEDES */
    if (args.length > 0) {
        String[] jugadas = processBatch(args[0]);
        String resultados[] = g.jugadas(jugadas);
        for (String res : resultados) {
            System.out.println(res);
        }
        return;
    }

    // ESTO SI SE EJECUTA PARA USTEDES
    // -----------------------------------------------------
    //          Generar los numeros aleatorios
    // Instanciamos el objeto Dadopara utilizar sus metodos
    Dado dados1 = new Dado();
    // En el metodo "setDados" modficamos el valor actual de la variable; pasandole
    // como argumento el objeto "dados1" con su metodo "generarNumerosAleatorios" 
    // "generarNumerosAleatorios" devolvera un array de enteros con numeros aleatorios
    dados1.setDados(dados1.generarNumerosAleatorios());
    // Obtenemos los dados aleatorios y los guardamos en el array "dadosAleatorios"
    int[] dadosAleatorios = dados1.getDados();

    //  Se imprimen los dados para poder comprar con el resultado arrojado luego
    for (int i = 0; i < dadosAleatorios.length; i++) {
        System.out.print(" [" + dadosAleatorios[i] + "] ");
    }
93
    
Nahuel Mereles Rodriguez committed
94 95 96 97 98 99 100 101 102
    //Instanciamos el objeto "jugada1" para ejecutar las comprobaciones
    Jugada jugada1 = new Jugada();
    //Llamamos al metodo tiro pasandole como argumento los dados que se generaron
    jugada1.tiro(dadosAleatorios);
    //"g" es un objeto de la clase Generala que ejecutara el metodo jugada. 
    //Le paso como parametro el string de la variabe de la clase Jugada
    g.jugada(jugada1.getJugada1());
}
}