Cuadrado mágico de orden impar
//Código fuente:
#includelt; stdio.hgt;
int?
int a[16][16], i, j, k, p, m, n
p=1
mientras(p==1)
{
printf("Ingrese el orden: ");
scanf("d", amp; n
); if((n!=0)amp;amp;(nlt;=15)amp;amp;(n2!=0))p=0;
}
for( i=1;ilt;=n;i)
{
for(j=1;jlt;=n;j)
{
a[i][j]=0;
}
}
j=n/2 1;
a[1][j]=1;
for(k=2;klt;=n*n;k)
{
i= i-1;
j=j 1;
if((ilt;1)amp;amp;(jgt;n))
{ p>
i=i 2;
j=j-1;
}
más
{
si(ilt;1)i=n;
if(jgt;n)j=1;
}
si(a[ i][j]==0)
a[i][j]=k;
otro
{
i =i 2;
j=j-1;
a[i][j]=k;
}
}
printf("\n");
for(i=1;ilt;=n;i)
{
for(j=1;jlt;=n;j)
{
printf("3d", a[i][j]);
}
printf("\n");
}
}