Jump to content

Recommended Posts

Posted

Boas, programadores!

Estou com um problema num trabalho. Para praticar o que tenho aprendido, decidi fazer o jogo do galo (em texto, sem GUI, o que ainda torna o trabalho mais complicado de certa maneira), e está-me a dar um erro que estou com problemas a resolver.

Este é o código que já fiz:

import java.util.Scanner;

public class Jogo {

public static void main(String args[]){

	int coordenadaVertical;
	int coordenadaHorizontal;

String arrayJogo[][] = new String[4][4];

	arrayJogo[1][1] = " ";
	arrayJogo[1][2] = " ";
	arrayJogo[1][3] = " ";
	arrayJogo[2][1] = " ";
	arrayJogo[2][2] = " ";
	arrayJogo[2][3] = " ";
	arrayJogo[3][1] = " ";
	arrayJogo[3][2] = " ";
	arrayJogo[3][3] = " "; 

    	String desenho = (" _________________\n|     |     |     |\n|  "+ arrayJogo[1][1] +"  |  "+ arrayJogo[1][2] +"  |  "+ arrayJogo[1][3] +"  |\n|_____|_____|_____|\n|     |     |     |\n|  "+ arrayJogo[2][1] +"  |   "+ arrayJogo[2][2] +" |  "+ arrayJogo[2][3] +"  |\n|_____|_____|_____|\n|     |     |     |\n|  "+ arrayJogo[3][1] +"  |  "+ arrayJogo[3][2] +"  |  "+ arrayJogo[3][3] +"  |\n|_____|_____|_____|");

Scanner teclado = new Scanner(System.in);

//------------------------------------------------------------------------------------------------------------------//

	System.out.println(desenho);

	System.out.println("Jogador 1:");
	System.out.println("Insira o número da coordenada vertical (1-3):");

	 coordenadaVertical = teclado.nextInt();

	 System.out.println("Insira o número da coordenada horizontal (1-3):");

	 coordenadaHorizontal = teclado.nextInt();

	 arrayJogo[coordenadaVertical][coordenadaHorizontal] = "X";

	 System.out.println("coordenadaVertical:" +coordenadaVertical);
	 System.out.println("coordenadaHorizontal:" +coordenadaHorizontal);
	 System.out.println("arrayJogo[coordenadaVertical][coordenadaHorizontal]:" +arrayJogo[coordenadaVertical][coordenadaHorizontal]);
	 System.out.println(desenho);

	}

}

(os prints de todas as variáveis foram inseridos para verificar o estado de cada um e ver se assim percebia onde estava o erro, mas sem sucesso)

Este código, quando executado, retorna isto:

_________________

|          |          |          |

|          |          |          |

|_____|_____|_____|

|          |          |          |

|          |          |          |

|_____|_____|_____|

|          |          |          |

|          |          |          |

|_____|_____|_____|

Jogador 1:

Insira o número da coordenada vertical (1-3):

2

Insira o número da coordenada horizontal (1-3):

2

coordenadaVertical:2

coordenadaHorizontal:2

arrayJogo[coordenadaVertical][coordenadaHorizontal]:X

_________________

|          |          |          |

|          |          |          |

|_____|_____|_____|

|          |          |          |

|          |          |          |

|_____|_____|_____|

|          |          |          |

|          |          |          |

|_____|_____|_____|

O problema é que na segunda impressão, deveria aparecer um X nas coordenadas escolhidas, de acordo com o código. Mas não sei porquê, não aparece.

Tenho a certeza que algo me está a passar ao lado e que este é um erro bem simples, mas não estou a encontrar uma solução. 

  Alguém me pode ajudar?

Obrigado desde já,

  Angus Young

Isto porque, saber a composicão do granito, os estágios da evolucão psicológica humana ou as deambulacões do Sartre não indicam puto sobre as competências de alguém num determinado campo específico e muito menos sobre o que as pessoas gostam de fazer ou a sua capacidade de aprendizagem. - bubulindo, 15 de Fevereiro de 2013 - 02:01

Posted

A string desenho foi definida em cima com os "campos" em branco.

Ao imprimires a 2ª ves, vais imprimir a mesma string.

Tens que voltar a "construir" a string desenho.

arrayJogo[coordenadaVertical][coordenadaHorizontal] = "X";

String desenho = (" _________________\n|     |     |     |\n|  "+ arrayJogo[1][1] +"  |  "+ arrayJogo[1][2] +"  |  "+ arrayJogo[1][3] +"  |\n|_____|_____|_____|\n|     |     |     |\n|  "+ arrayJogo[2][1] +"  |   "+ arrayJogo[2][2] +" |  "+ arrayJogo[2][3] +"  |\n|_____|_____|_____|\n|     |     |     |\n|  "+ arrayJogo[3][1] +"  |  "+ arrayJogo[3][2] +"  |  "+ arrayJogo[3][3] +"  |\n|_____|_____|_____|");

System.out.println("coordenadaVertical:" +coordenadaVertical);
System.out.println("coordenadaHorizontal:" +coordenadaHorizontal);
System.out.println("arrayJogo[coordenadaVertical][coordenadaHorizontal]:" +arrayJogo[coordenadaVertical][coordenadaHorizontal]);
System.out.println(desenho);

ou então crias um método para imprimir a tela do jogo.

Engenharia de Sistemas Informáticos @ IPCA

"Estou convencido de que cerca de metade do que separa os empreendedores de sucesso daqueles malsucedidos é a pura perseverança." - Steve Jobs

Posted

Sabes quando acontece aquele "clique" no teu cérebro e uma luz se acende?

Foi o que me acabou de acontecer  😉

Isto porque, saber a composicão do granito, os estágios da evolucão psicológica humana ou as deambulacões do Sartre não indicam puto sobre as competências de alguém num determinado campo específico e muito menos sobre o que as pessoas gostam de fazer ou a sua capacidade de aprendizagem. - bubulindo, 15 de Fevereiro de 2013 - 02:01

Posted

Consegui resolver o erro! Obrigado  😉

Isto porque, saber a composicão do granito, os estágios da evolucão psicológica humana ou as deambulacões do Sartre não indicam puto sobre as competências de alguém num determinado campo específico e muito menos sobre o que as pessoas gostam de fazer ou a sua capacidade de aprendizagem. - bubulindo, 15 de Fevereiro de 2013 - 02:01

Posted

Sabes quando acontece aquele "clique" no teu cérebro e uma luz se acende?

Foi o que me acabou de acontecer  😉

Tipo à desenhos animados 😁

Engenharia de Sistemas Informáticos @ IPCA

"Estou convencido de que cerca de metade do que separa os empreendedores de sucesso daqueles malsucedidos é a pura perseverança." - Steve Jobs

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.