¡Algoritmo en lenguaje C para el cuadrado mágico!
Echemos un vistazo primero:
Cuadrado mágico de tercer orden:
8 1 6
3 5 7
4 9 2
Cuadrado mágico de orden 5:
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
#include
# definir N 5
void main()
{
int i,j,k,a[N][N];
for(i=0;i for(j=0;j a[i][j]=0; * El valor inicial es cero*/ j=N/2; a[0][j]=1 /*Determinar la posición de 1*/ for(k=2;k<=N*N;k++) { i--; j++; if(i<0) i=N-1; /*fila fuera de límites*/ else if(j>N-1) j =0; /*Lista de límites*/ if(a[i][j]==0) a[i][j]=k ; /*Presione Determinar la posición numérica en orden regular*/ else { i=(i+2)%N; j=( j-1+N)%N; a[i][j]=k /*La posición del número cuando ya hay números*/ } } printf("\n\n"); for(i=0;i { printf("\t"); for(j=0;j printf(" %4d",a[i][ j]); /*Mostrar matriz cuadrada mágica*/ printf("\n\n"); } return; } Es mejor que lo estudies tú mismo y quedarás más impresionado. Estudia mucho. De hecho, solo soy un principiante