Em um jogo da velha, matrizes, ifs, whiles, booleans, etc. bom aprendizado

3 respostas
R

SEGUE LINK PARA O CÓDIGO JOGO DA VELHA (PARA CONSOLE)

http://pastebin.com/1S3p2RzC

AGUARDO COMENTÁRIOS.

3 Respostas

E

cara vc deveria estudar um pouco de Orientação Objeto

colocar 30 booleano casaxx01,casaxx02,casaxx03, ta errado isso

Com orientação objeto vc poderia ter feito essa validação em 10 linhas e não precisaria declarar esses trocentos booleanos

R

alo , grato pela resposta. bem desculpe se isso pareceu esquisito. o fato é que funciona. mas também o ponto é que na verdade isto aí foi feito sem um planejamento, com esta lógica pronta, fica mais fácil otimizar o código. era um trabalho de aula, achei legal porque funcionou bonitinho, um colega recomendou este ‘paste bin’ e resolvi também postar aqui.

Agora ainda comentando o que vc disse, ‘errado’, ‘errado’, não tá, simplesmente pode haver uma maneira mais otimizada de fazer a mesma coisa.

Se tratando de um programa pequeno, o funcionamento é perfeito, talvez se fosse algo grande, começaria a fazer uma pequena diferença, etc. e tal. Era um desafio de aula :faça um jogo da velha. té +.

V

Parabéns! Não cheguei a testar, mas deve ter dado um trabalhinho... kkkkkk

Como foi dito: você poderia otimizar o código. Ex.: array de boolean. Quando ouver uma repetição muito grande de uma verificação crie um método para simplificar.
if (X == 2 && Y == 1 && casa21x == false && casa21y == false) { ... }
int x, y;
	boolean casas[];
	
	private boolean isOcupado (int x, int y, int nCasa1, boolean casa1, int nCasa2, boolean casa2){
		//Respectivamente: X, Y, numero da casa 1, valor para comparação da casa 1, numero da casa 2, valor de comparação da casa 2.
		if(this.x == x && this.y == y 
				&& this.casas[nCasa1] == casa1 
				&& this.casas[nCasa2] == casa2){
			return true;
		}
		return false;
	}

Acho que deu pra entender... :)

Criado 23 de agosto de 2013
Ultima resposta 25 de ago. de 2013
Respostas 3
Participantes 3