Magic squared 4x4 as3

En esta temporada que pasamos encerrados me puse a limpiar mis documentos y encontre este ejemplo de programación el cual mejor lo comparto antes de elimnarlo. Crearemos el juego llamado “Magic squares”.

Mencionando un poco de la historial del juego:

“T HE TRADITIONAL magic square is a set of integers in
serial order, beginning with 1, arranged in square formation
so that the total of each row, column and main diagonal
is the same. Some notion of the fantastic lengths to
which this largely frivolous topic has been analyzed may be
gained from the fact that in 1838, when much less was understood
about magic squares than is known today, a French
work on the subject ran to three volumes… continue…”


Básicamente el juego es realmente un problema matemático en el cual nos mostraran una tabla 4x4 en la cual deberemos poner diferentes números en cada tabla de manera que sumando los 4 números de x fila o columna vertical u horizontalmente siempre den como resultado el numero 34





Lo único que deberemos de hacer es crear 16 TextInput a los cuales nombraremos como num + fila + columna por ejemplo el primero sería num11, además de un label y un botón.

Aquí el código:







btn1.addEventListener(MouseEvent.CLICK, accion);

//inicio de la funcion accion
function accion(event:MouseEvent):void
{
  /*
 siendo
 |num11 num12 num13 num14|  
 |num21 num22 num23 num24|
 |num31 num32 num33 num34|
 |num41 num42 num43 num44|

 */
 //creando variables Rr la cual utilizaremos
 //para comprobar que la suma de
 //todos los numeros sea 34 para lo cua
 //llamaremos a la funcion sumas
 //con los 4 numeros a sumar
var Rr=true;

if(Rr==true){          
Rr=sumas(Number(num11.text),Number(num12.text),Number(num13.text),Number(num14.text));                          }

if(Rr==true){
Rr=sumas(Number(num21.text),Number(num22.text),Number(num23.text),Number(num24.text));                          }


if(Rr==true){          
Rr=sumas(Number(num31.text),Number(num32.text),Number(num33.text),Number(num34.text));                          }

if(Rr==true){
Rr=sumas(Number(num41.text),Number(num42.text),Number(num43.text),Number(num44.text));                          }

if(Rr==true){
Rr=sumas(Number(num11.text),Number(num21.text),Number(num31.text),Number(num41.text));                          }

if(Rr==true){
Rr=sumas(Number(num12.text),Number(num22.text),Number(num32.text),Number(num42.text));                          }

if(Rr==true){
Rr=sumas(Number(num13.text),Number(num23.text),Number(num33.text),Number(num43.text));                          }

if(Rr==true){
Rr=sumas(Number(num14.text),Number(num24.text),Number(num34.text),Number(num44.text));                          }

if(Rr==true){
Rr=sumas(Number(num11.text),Number(num22.text),Number(num33.text),Number(num44.text));                          }


if(Rr==true){
Rr=sumas(Number(num14.text),Number(num23.text),Number(num32.text),Number(num41.text));                          }


//En caso Re sea verdarero es porque
//todos los numeros introducidos dan como
//resultado 34
if(Rr==false)
{
                total.text="Correcto";
}
else
{
                total.text="Incorrecto";
}




};//fin funcion

 function sumas(a,b,c,d)
 { var R=true;
     if((a+b+c+d)==34)
                 {R=false}
                 
                 return R;
                 };



Os reto a que creen una simple parte que falto en este ejercicio lo cual es comprobar que no se introduzcan números iguales, anteriormente ya he mostrado ejemplo asiendolo en este caso, reto a que lo edites.


¿Quieres ver más problemas matemáticos?
Aconsejo el libro:
T H E  S E C O N D SCIENTIFC  L M E R I C A N B O O K 0 F MATHEMAMATHEMATICAL PUZZLES ANDD I V E R S I O N

Nota: Buscar por google xd


Comentarios

Entradas más populares de este blog

Solucion al error collation desconocida: 'utf8mb4_0900_ai_ci'

Ejemplo de suma Pascal