Olá pessoal estou fazendo um jogo para um trabalho, mas estou com dúvida de como fazer esse programa repetir para completar o tabuleiro todo.
Esse é meu código:
package batalhanaval;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
*
-
@author Daiene
*/
public class BatalhaNavalApp {/**
-
@param args the command line arguments
*/public static String tabuleiro[][]=
new String[8][8];//cria um tabuleiro 8x8//
public static int posicao[][] = new int[8][8];//posicoes dos barcos no tabuleiro//
public static void zeraPosicao(){ for(int l=0;l<8;l++){//preenche as linhas com 0// for(int c=0;c<8;c++){//preenche as colunas com 0// posicao[l][c] = 0; } } }
//funcao que determina a Posicao dos submarinos no tabuleiro//
public static void posicaoDosSubmarinos(){//SUBMARINO 1// posicao[1][2] = 1; //SUBMARINO 2// posicao [1][0] = 1; //SUBMARINO 3// posicao [6][7] = 1; //SUBMARINO 4// posicao [4][6] = 1; //SUBMARINO 5// posicao [3][1] = 1;
}
//funcao que define a Posicao dos distroyers no tabuleiro//
public static void posicaoDosDistroyers(){//DISTROYER 1// posicao [0][6] = 3; posicao [0][7] = 3; //DISTROYER 2// posicao [3][6] = 3; posicao [3][7] = 3; //DISTROYER 3// posicao [5][0] = 3; posicao [5][1] = 3; //DISTROYER 4// posicao [4][2] = 3; posicao [4][3] = 3;
}
//funcao que define a Posicao dos cruzadores no tabuleiro//
public static void posicaoDosCruzadores(){//CRUZADOR 1// posicao [5][3] = 5; posicao [5][4] = 5; posicao [5][5] = 5; //CRUZADOR 2// posicao[1][5] = 5; posicao[1][6] = 5; posicao[1][7] = 5; //CRUZADOR 3// posicao [2][4] = 5; posicao [2][5] = 5; posicao [2][6] = 5;
}
//funcao que define a Posicao dos navios no tabuleiro//
public static void posicaoDosNavios(){//NAVIO 1// posicao[0][0] = 7; posicao[0][1] = 7; posicao[0][2] = 7; posicao[0][3] = 7; //NAVIO 2// posicao[6][2] = 7; posicao[6][3] = 7; posicao[6][4] = 7; posicao[6][5] = 7;
}
//funcao que define a Posicao do Porta Aviao no tabuleiro//
public static void posicaoDoPortaAviao(){//PORTA AVIAO// posicao[7][3] = 9; posicao[7][4] = 9; posicao[7][5] = 9; posicao[7][6] = 9; posicao[7][7] = 9;
} /* public static void imprimeMatrizdePosicao(){ String saida=""; for(int l=0;l<8;l++){//preenche as linhas com elementos de 0 a 7// System.out.println("\n"); for(int c=0;c<8;c++){//preenche as colunas com elementos de 0 a 7// System.out.println(posicao[l][c]); } } }*/
public static int lerLinha(){ BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in)); int Linha=0; try { System.out.println("Informe a linha "); Linha=Integer.parseInt(entrada.readLine()); if(Linha >=0 && Linha <=7){ return(Linha); }else{ System.out.println(“Linha invalida!!!”); return(lerLinha()); } } catch(Exception e){ System.out.println(“Linha invalida!!!”); return(lerLinha()); } }
public static int lerColuna(){ BufferedReader entrada = new BufferedReader (new InputStreamReader(System.in)); int Coluna=0; //int acert=14; try { System.out.println("Informe a coluna "); Coluna=Integer.parseInt(entrada.readLine()); if(Coluna >=0 && Coluna <=7){ return(Coluna); }else{ System.out.println(“Coluna invalida!!!”); return(lerColuna()); } } catch(Exception e){ System.out.println(“Coluna invalida!!!”); return(lerColuna()); }
} public static void inicilizaMatriz(){ for(int l=0;l<8;l++){//preenche as linhas com elementos de 0 a 7// for(int c=0;c<8;c++){//preenche as colunas com elementos de 0 a 7// tabuleiro[l][c]=" "; } }
}
public static void imprimeTabuleiro(){ System.out.println(" 0 1 2 3 4 5 6 7"); //numero da coluna System.out.println(" _________________________________"); for(int l=0;l<8;l++){//preenche as linhas com elementos de 0 a 7// System.out.print(l + " "); //numero da linhas do lado do tabuleiro for(int c=0;c<8;c++){//preenche as colunas com elementos de 0 a 7// System.out.print("| "+tabuleiro[l][c]+" "); } System.out.println("|"); System.out.println(" _________________________________"); } } public static void verificaPosicao(int col,int lin){ int escolha = posicao[lin][col]; System.out.println(escolha); if(tabuleiro[lin][col] == " "){//se vc ainda n escolheu essa posicao switch(escolha){ case 0: System.out.println("voce atirou na agua, tente novamente"); tabuleiro[lin][col] = "X"; break; case 1: System.out.println("voce acertou um submarino"); tabuleiro[lin][col] = "1"; break; case 3: System.out.println("voce acertou um distroyer"); tabuleiro[lin][col] = "3"; break; case 5: System.out.println("voce acertou um cruzador"); tabuleiro[lin][col] = "5"; break; case 7: System.out.println("voce acertou um navio"); tabuleiro[lin][col] = "7"; break; case 9: System.out.println("voce acertou um porta-avioes"); tabuleiro[lin][col] = "90"; break; } } } public static void main(String[] args) { int linha,coluna; //BufferedReader entrada; //entrada = new BufferedReader(new InputStreamReader(System.in)); //METODOS QUE INICIALIZAM OS BARCOS// zeraPosicao(); posicaoDosSubmarinos(); posicaoDosDistroyers(); posicaoDosCruzadores(); posicaoDosNavios(); posicaoDoPortaAviao(); //METODOS QUE INICIALIZA AS MATRIZES// //imprimeMatrizdePosicao(); inicilizaMatriz(); imprimeTabuleiro(); //METODOS QUE PEGAM A LINHA E COLUNA// linha = lerLinha(); coluna = lerColuna(); verificaPosicao(coluna,linha); imprimeTabuleiro(); //System.out.println(linha + " " + coluna); }
-
}
Também estamos com dúvidas na interface do meu jogo… Se aguém puder me ajudar… Agradeço…
