Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: Meta en 24 Abril 2011, 08:06 AM

Título: Buscara errores.
Publicado por: Meta en 24 Abril 2011, 08:06 AM
Hola:

No se la causa de estos errores.


Main.java
Código (java) [Seleccionar]
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package mypkg;
import java.util.Scanner;
import java.util.InputMismatchException;

/**
*
* @author Hunter
*/
public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner lector = new Scanner(System.in);
        int[] palillos = {7,5,3};
        JuegoPalillos juego;
        String[] jugador = new String[2];
        jugador[0] = "Jugador 1";
        jugador[1] = "Jugador 2";
        int turno = 0;
        int fila;
        int cuantos;
        juego = new JuegoPalillos(palillos);

        do{
            System.out.println(juego);
            System.out.printf(jugador[turno]+". elige fila");
            fila = lector.nextInt();
            System.out.printf(jugador[turno]+". ¿cuántos palillos quieres quitar?");
            cuantos = lector.nextInt();
            if (juego.quitaPalillos(fila.cuantos)){
                turno = (turno + 1) % 2;
            }else{
                System.out.printf("Introduce bien la fila y los palillos");
            }
        }catch (InputMismatchException e){
            System.out.printf("por favor introduce un número.");
            lector.next();
        }cath (Exception exc){
            System.out.printf("Se ha producido algún error " + exc.toString());
        }
    }while (!juego.finDeJuego());
    System.out.println("El ganador ha sido " + jugador[turno]);

}


JuegoPalillos.java
Código (java) [Seleccionar]
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package mypkg;

/**
*
* @author Hunter
*/
public class JuegoPalillos {
    private FilaPalillos[] filas;

    public JuegoPalillos(int[] palillos){
        filas = new FilaPalillos[palillos.length];
        for (int i = 0; i < filas.length; i++){
            filas[i] = new FilaPalillos(palillos[i]);
        }
    }

    public boolean quitaPalillos(int fila, int cuantos){
        if (fila < 0 || fila >= filas.length)
            return false;
        else
            return filas[fila].quitaPalillos(cuantos);
    }

    public boolean finDeJuego(){
        for (int i = 0; i < filas.length; ++i){
            if(filas[i].cuantosPalillos() != 0) return false;
        }
        return true;
    }

    public String toString(){
        String s = "";
        for (int i = 0; i < filas.length; i++){
            s += i + " " + filas[i] + "\n";
        }
        return s;
    }
}




FilaPalillos.java
Código (java) [Seleccionar]
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package mypkg;

/**
*
* @author Hunter
*/
public class FilaPalillos {
    private int numPalillos;

    public FilaPalillos(int tamaño){
        numPalillos = tamaño;
    }

    public boolean quitaPalillos(int cuantos){
        if (cuantos > numPalillos){
            return false;
        }else{
            numPalillos -= cuantos;
            return true;
        }
    }

    public String toString(){
        String s = "";
        for (int i=0; i < numPalillos; i++){
            s += "|";
        }
        return s;
    }

    public void añadePalillos(int cuantos){
        numPalillos += cuantos;
    }

    public int cuantosPalillos(){
        return numPalillos;
    }
}


Quiero solucionar los errores de este programa.
Título: Re: Buscara errores.
Publicado por: 1mpuls0 en 24 Abril 2011, 10:01 AM
Qué errores?, indicalos.
a qué conclusión llegaste por la cual se ocasionan los errores?

La verdad no creo que muchos quieran compilar esas clases para revisar los errores.

Saludos.
Título: Re: Buscara errores.
Publicado por: Edu en 24 Abril 2011, 19:40 PM
Yo lo que hago siempre es ir colocando algun mensaje o algo por parte de codigo, cosa q si no llega a ese mensaje se q el error esta antes, luego vas poniendo el mensaje o lo q sea cada vez antes hasta encontrarte con la linea o bucle q de error y entonces ahi dejas aca el codigo del error en vez de dejar todos esos codigos
Título: Re: Buscara errores.
Publicado por: Shell Root en 24 Abril 2011, 20:28 PM
A simple vista son errores de sintaxis, por ejemplo:
Main.java
Código (java) [Seleccionar]
        }cath (Exception exc){
            System.out.printf("Se ha producido algún error " + exc.toString());
        }


debería ser,
Código (java) [Seleccionar]
        }catch (Exception exc){
            System.out.printf("Se ha producido algún error " + exc.toString());
        }
Título: Re: Buscara errores.
Publicado por: Meta en 28 Abril 2011, 16:08 PM
Am, lo comprobaré, si que tienes buena vista.