El post que buscas se encuentra eliminado, pero este también te puede interesar

Cuadro Magico 3x3 en JAVA by R4z0r_

Anuncios

Cuadro Magico 3x3 en JAVA by R4z0r_

java


Saludos a todos, en esta entrada les mostrare el proceso que lleve a cabo para dar solucion a un cuadrado magico de 3x3. El Algoritmo o codigo empleado es totalmente hecho por mi, codigo autentico desde cero. (lo aclaro porque hubieron compañeros que dieron solucion pero basandose en otro codigo ya existente)



Bien, lo primero fue declarar una matriz y dos vectores en forma global y statica. Un Mentodo Main con un objeto que llama ciertos metodos, en cierto orden.


Cubo magico


Llenamos la matriz de ceros (0)


poo


Implemento el metodo pareseimpares() para calcular los numeros pares y los impares comprendidos entre 1 y 9 guardandolos en vectores diferentes.

Los Numeros los almaceno de mayor a menor:

pares: 8, 6, 4, 2
impares: 9, 7, 5 ,3, 1



cuadrado magico



Ahora hacemos un ciclo que haga el recorrido de filas de 1 a 3 y el de las columnas de 3 a 1; es decir que el recorrido de las filas vaya de arriba a abajo y el de las columnas de derecha a izquierda, con la condicion de que se vayan guardando los numeros pares de mayor a menor en cada una de las posiciones donde el entero de las filas y columnas sea par:

0,0 - 0,2
2,0 - 2,2



3x3




Como ya tenemos organizados los numeros pares, ahora solo falta organizar los impares, con el mismo algoritmo de arriba-abajo, derecha-izquierda pero con la condicion de que solo se fueran almacenando los impares si la posicion estaba vacia (osea si es cero) pero en orden contrario, como los impares estaban de mayor a menor, el codigo cambio en que se colocarian desde la ultima posicion hasta la primera, osea de menor a mayor.


cuadro magico


Una ves ya organizado todos los numeros en la matriz, procedemos a mostrarlos en pantalla


Cuadro Magico 3x3 en JAVA by R4z0r_



El Resultado es el Siguiente:



java

Cubo magico

7 comentarios - Cuadro Magico 3x3 en JAVA by R4z0r_

@mauroturza +1
que cuadrado magico de que? perdon pero no entiendo ja
@mrdonchupas1 +1
igual yo
@clandher
Si sumas los números por cuadro en linea horizontal, vertical o diagonal te da un total de 15.
@wanchopee
algunas recomendaciones, usa constructores para la la clase y no es necesario que hagas un método "llenar" ya que el compilador de java te inicializa por defecto en 0 cuando haces el new de la matriz.
@furious_black
siendo de 3X3 el cuadro mágico, sabes que solo comprende números del 1 al 9, entonces, tal ves sea redundante utilizar un método para establecer los numero pares o impares, porque ya los conocemos.
Es mi humilde opinión ...
@DiegoAsencio
es obvio que los conocemos, pero los saque y los almacene en un vector para despues irlos aregando, posicion por posicion...
@DrColoso +1
Muy boludo e ineficiente.
Gastas memoria guardando los numeros impares y pares entre 1 y 9?? Absurdo.
@DiegoAsencio
lo que pasa es que imp0lemente ese metodo para q me sirviera el proceso al generalizar el codigo para cualqueir cuadrado de orden impar, y como no se sabe exactamente de q tamaño es el cuadro a calcular pues no se sabe cuales son los pares e impares a calcular
@DrColoso +1
@DiegoAsencio Aparte no estas resolviendo el problema general, estas dando el orden que de pedo lo resuelve, o sea, es como hacer un print de la matriz que estas mostrando.
Me parecía que no estabas resolviendo el problema... lo que haces es llenar la matriz (en el orden que elegis) e imprimirla.
NO resolves el problema del cuadrado magico.
@DiegoAsencio
@DrColoso ok bien, el codigo ya esta modificado........... gracias..
@alejandro93vp
En el metodo acomodar impares porque declaras y=4;??????
@EDWIN20100
Ecelente me sirvio de muxo pero en VB qracias