# include <stdio.h>
# include <math.h>
int main( ) {
// Introductory message
printf ( "This program creates a magic sqaure of a specified size.\n " ) ; printf ( "The size must be an odd number between 1 and 99.\n " ) ;
// Get the users magic number and allocate to int n
int n;
printf ( "Enter size of magic square: " ) ; // Create the array (not using VLA)
int magic[ 99 ] [ 99 ] , i, j;
for ( i = 0 ; i < n; i++ ) {
for ( j = 0 ; j < n; j++ ) {
magic
[ i
] [ j
] = n
* ( ( i
+ j
- 1 + ( int ) floor ( n
/ 2 ) ) % n
) + ( ( int ) ( i
+ 2 * j
- 2 ) % n
) + 1 ; }
}
// Now let's print the array
for ( i = 0 ; i < n; i++ ) {
for ( j = 0 ; j < n; j++ ) {
}
}
return 0 ;
}
IyBpbmNsdWRlIDxzdGRpby5oPgojIGluY2x1ZGUgPG1hdGguaD4KCmludCBtYWluKCkgewoKLy8gSW50cm9kdWN0b3J5IG1lc3NhZ2UKcHJpbnRmKCJUaGlzIHByb2dyYW0gY3JlYXRlcyBhIG1hZ2ljIHNxYXVyZSBvZiBhIHNwZWNpZmllZCBzaXplLlxuIik7CnByaW50ZigiVGhlIHNpemUgbXVzdCBiZSBhbiBvZGQgbnVtYmVyIGJldHdlZW4gMSBhbmQgOTkuXG4iKTsKCi8vIEdldCB0aGUgdXNlcnMgbWFnaWMgbnVtYmVyIGFuZCBhbGxvY2F0ZSB0byBpbnQgbgppbnQgbjsKcHJpbnRmKCJFbnRlciBzaXplIG9mIG1hZ2ljIHNxdWFyZTogIik7CnNjYW5mKCIlZCIsICZuKTsKcHJpbnRmKCJcbiIpOwovLyBDcmVhdGUgdGhlIGFycmF5IChub3QgdXNpbmcgVkxBKQppbnQgbWFnaWNbOTldWzk5XSwgaSwgajsKZm9yKCBpID0gMDsgaSA8IG47IGkrKyApIHsKICBmb3IoIGogPSAwOyBqIDwgbjsgaisrICkgewogICAgbWFnaWNbaV1bal0gPSBuICogKCAoaSArIGogLSAxICsgKGludCkgZmxvb3IobiAvIDIpKSAlIG4gKSArICgoaW50KSAoaSArIDIgKiBqIC0gMikgJSBuICkgKyAxOwogIH0KfQoKLy8gTm93IGxldCdzIHByaW50IHRoZSBhcnJheSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCmZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgZm9yIChqID0gMDsgaiA8IG47IGorKykgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICBwcmludGYoIiU0ZCIsIG1hZ2ljW2ldW2pdKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICB9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgcHJpbnRmKCJcbiIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCnJldHVybiAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAp9ICAgICAgICAgICAgIA==