Red de conocimiento informático - Consumibles informáticos - Programación del cubo mágico c

Programación del cubo mágico c

# incluir & ltstdio.h & gt

void main()

{

int a[16][16], I, j, k, n ;

printf("Ingrese n(n=1 a 15):");

scanf("%d ", & ampn);

para (I = 1; i<= n;i++)

for(j = 1;j<= n;j++)

a[I][j]= 0 ; asegúrese de inicializar la matriz; de lo contrario, el resultado no se generará.

if(j=n/2+1)

a[1][j]= 1

for(k = 2; k & lt; = n * nk++)

{

I = I-1; //Escribe los principios generales primero.

j = j+1;

If ((i & lt1); & amp(j & gtN)) //El último elemento de la primera fila, el siguiente elemento es Ponlo directamente debajo.

{

I = I+2

j = j-1

}

Otros

{

If (i & lt1) // En la primera fila, su siguiente elemento está en la enésima fila.

I = n;

if(j & gt; N) //Cuando se llega a la última columna, el siguiente elemento pasa a la primera columna.

j = 1;

}

If(a[i][j]==0) //OK si el siguiente elemento no se ha completado todavía Las reglas se generarán en orden descendente.

a[I][j]= k;

Otros

{

I = I+2; Restamos 1 del I original y ahora tenemos que sumar 1, por lo que siempre volvemos a 2.

j = j-1; // Dado que la J original se sumó en 1, ahora es necesario restarla en 1.

a[I][j]= k

}

}

for(I = 1;i<= n; i++) //Módulo de entrada de matriz

{

for(j = 1; j & lt= n; j++)

printf("% 5d ", a[I][j]);

printf(" \ n ");

}

}