ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Matriz Caracol


Enviado por   •  20 de Mayo de 2014  •  720 Palabras (3 Páginas)  •  231 Visitas

Página 1 de 3

class MatrizCaracol

{

int direccion=0; //0-Dcha, 1-Abajo, 2-Izqa, 3-Arriba

Integer[][] matriz;

int numeroActual=1;

int posicionX=0, posicionY=0;

public static void main(String[] args)

{

int numero=9;

MatrizCaracol mc = new MatrizCaracol();

mc.matriz= new Integer[numero][numero];

mc.rellena(numero, mc.direccion);

numero--;

while (numero>0)

{

mc.rellena(numero,mc.direccion);

mc.rellena(numero,mc.direccion);

numero--;

}

System.out.println(mc.toString());

}

public void rellena(int num, int direccion)

{

if ((posicionX==0)&&(posicionY==0))

{

this.matriz[posicionX][posicionY]=numeroActual;

this.numeroActual++;

num--;

}

for (int i=0;i<num;i++)

{

switch (direccion)

{

case 0: posicionX++;

break;

case 1: posicionY++;

break;

case 2: posicionX--;

break;

case 3: posicionY--;

break;

}

this.matriz[posicionY][posicionX]=numeroActual;

this.numeroActual++;

}

this.direccion=(this.direccion!=3)?this.direccion+1:0;

}

public String toString()

{

String res = "";

for(int i = 0; i < matriz.length; i++)

{

res = res + "[";

for(int j = 0; j < matriz.length; j++)

{

res = res + matriz[i][j] + ", ";

}

res = res.substring(0, res.length()-2) + "] \n";

}

return res;

}

}

...

Descargar como (para miembros actualizados) txt (2 Kb)
Leer 2 páginas más »
Disponible sólo en Clubensayos.com