ayuda porfavor para encontrar elementos consecutivos repetidos en una matriz

andres acero
18 de Noviembre del 2014
hola amigos , tengo una matriz nxn y yo selecciono un punto cualquiera en la matriz donde debo tener un metodo que me recorra desde esa posicion los numeros consecutivos que sean iguales y los modifique en otro numero

asi:

1235
4555
4525

donde selecciono la posicion: fila 1 , columna 4
y me cambie los elementos consecutivos repetidos por 0
dandome una matriz resultante asi:

1230
4000
4020


Fantoshe lalocuentis
01 de Julio del 2016
package IntercambiarMatriz;

import java.util.Scanner;

public class IntercambiaMatriz {

	
	public void imprimirMatriz(int[][] matriz){
		
		
		for(int i=0; i < matriz.length; i++){
			
			for(int j=0; j < matriz.length; j++)
								
				System.out.print(matriz[i][j]);

			
			System.out.println();	
			
		}
		
		
	}
	
	public void rellenarMatriz(int[][] matriz){
		
		 Scanner n = new Scanner(System.in);
		
		
		 
		for(int i=0; i< matriz.length; i++){
			for(int j=0; j< matriz.length; j++){
				System.out.println("Inserte el valor de la fila " + i + " columna " + j );
				matriz[i][j] = n.nextInt();
				
				
				
			}			
		}
		
		
		
	}
	
	public int obtenerPosicion(int[][] matriz, int x, int y){
		
				return matriz[x][y];
				
	}
	
	public void sustituirValores(int[][] matriz, int valor){
		
		
		
		for(int i=0; i< matriz.length; i++){
			for(int j=0; j< matriz.length; j++){
				
			
				if(matriz[i][j] == valor){
					
					matriz[i][j] = 0;
					
				}	
			
			}			
			
		}
		
		
	}
	
	public static void main(String[] args) {
		
		
		Scanner n = new Scanner(System.in);
		int[][] matriz = new int[2][2];
		int x;
		int y;
		int valor;
		
		
		IntercambiaMatriz ma = new IntercambiaMatriz();	
		
		System.out.println("Bienvenido, por favor inicialice la matriz...n");
		
		ma.rellenarMatriz(matriz);
		
		System.out.println("Imprimiendo la matriz original: ");

		ma.imprimirMatriz(matriz);
		
		System.out.println("Seleccione la posicion a obtener el valor para x: n");
		x = n.nextInt();
		System.out.println("Seleccione la posicion a obtener el valor para y: n");
		y = n.nextInt();
		valor = ma.obtenerPosicion(matriz, x, y);
		ma.sustituirValores(matriz, valor);
		
		ma.imprimirMatriz(matriz);
	}
	
	
	
	
}