ayuda para java
arbeluc:
hola, necesito k laguien me ayude con un programa de java. Se trata de lo siguiente:
-Necesito saber como es el codigo en una matriz 10x10. En la que cuando coincidan 4 numeros iguales ya sea en horizontal,vertical o en diagonal me lo diga mediante un mensaje.(Es para el conecta 4) Esta parte es lounico que me falta.
- Imagino que sera facil, pero no se me ocurre la manera de ponerlo.Si me podeis ayudar.
kåhjî£:
perate ahi hay algo que no entiendo, basicamente es saber si un numero se repite cuatro veces dentro de la matriz ??? o necesariamente deben ser repetidos asi:
2 2 2 2
ó
2
2
2
2
ó
2
2
2
2
como es explicame bien ??
arbeluc:
Si es exactamente de la forma en que lo has puesto en el dibujo.
Bres:
Toma, aquí tienes para el vertical y el horizontal. El diagonal tiene más tela y ahora mismo no se me ocurre como podria ser. Ya lo miraré otro día que me esté aburriendo :P.
Código:
int[][] matriz = new int[10][10];
int i,j,nRepetidos=0;
//comprueba filas
for(i=0;i<10;i++){
for(j=0;j<9;j++){
int actual = matriz[i][j];
int siguiente = matriz[i][j+1];
if(actual==siguiente){
nRepetidos++;
}else{
nRepetidos=0;
}
if(nRepetidos==4){
System.out.println("Cuatro en raya (horizontal)");
break;
}
j++;
}
if(nRepetidos==4){
break;
}
i++;
}
//Comprueba columnas
for(i=0;i<10;i++){
for(j=0;j<9;j++){
int actual = matriz[j][i];
int siguiente = matriz[j+1][i];
if(actual==siguiente){
nRepetidos++;
}else{
nRepetidos=0;
}
if(nRepetidos==4){
System.out.println("Cuatro en raya (vertical)");
break;
}
j++;
}
if(nRepetidos==4){
break;
}
i++;
}
arbeluc:
muxas gracias por la ayuda
Navegación
[#] Página Siguiente