#include <stdio.h>
int main(void) {
int n, i, j;
int mat[n][n];
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
}
}
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
}
}
int somaDP = 0, somaDS = 0;
//soma diagonal principal
for (i = 0; i < n; i++) {
somaDP += mat[i][i];
}
//soma diagonal secundaria
for (i = 0; i < n; i++) {
somaDS += mat[i][n-i-1];
}
//soma linhas
printf("\nSoma das linhas: "); int vetL[n];
for (i = 0; i < n; i++) {
vetL[i] = 0;
for (j = 0; j < n; j++) {
vetL[i] += mat[i][j];
}
}
for (i = 0; i < n; i++) {
}
//soma colunas
printf("\nSoma das colunas: "); int vetC[n];
for (j = 0; j < n; j++) {
vetC[j] = 0;
for (i = 0; i < n; i++) {
vetC[j] += mat[i][j];
}
}
for (i = 0; i < n; i++) {
}
printf("\nSoma diagonal principal %i e secundaria %i\n", somaDP
, somaDS
);
int testaL = 1, testaC = 1;
for (i = 1; i < n; i++) {
if (vetL[i] != vetL[i-1]) {
testaL = 0;
break;
} else if (vetC[i] != vetC[i-1]) {
testaC = 0;
break;
}
}
if (testaL && testaC && somaDP == somaDS && somaDP == vetL[0]) {
} else {
printf("Quadrado nao magico"); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbih2b2lkKSB7CglpbnQgbiwgaSwgajsKCXNjYW5mKCIlaSIsICZuKTsKCQoJaW50IG1hdFtuXVtuXTsKCQoJZm9yIChpID0gMDsgaSA8IG47IGkrKykgewoJCWZvciAoaiA9IDA7IGogPCBuOyBqKyspIHsKCQkJc2NhbmYoIiVpIiwgJm1hdFtpXVtqXSk7CgkJfQoJfQoJCglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJZm9yIChqID0gMDsgaiA8IG47IGorKykgewoJCQlwcmludGYoIiVpICIsIG1hdFtpXVtqXSk7CgkJfQoJCXByaW50ZigiXG4iKTsKCX0KCglpbnQgc29tYURQID0gMCwgc29tYURTID0gMDsKCQoJLy9zb21hIGRpYWdvbmFsIHByaW5jaXBhbAoJZm9yIChpID0gMDsgaSA8IG47IGkrKykgewoJCXNvbWFEUCArPSBtYXRbaV1baV07Cgl9CgkKCS8vc29tYSBkaWFnb25hbCBzZWN1bmRhcmlhCglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJc29tYURTICs9IG1hdFtpXVtuLWktMV07Cgl9CgkKCS8vc29tYSBsaW5oYXMKCXByaW50ZigiXG5Tb21hIGRhcyBsaW5oYXM6ICIpOwoJaW50IHZldExbbl07Cglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJdmV0TFtpXSA9IDA7CgkJZm9yIChqID0gMDsgaiA8IG47IGorKykgewoJCQl2ZXRMW2ldICs9IG1hdFtpXVtqXTsKCQl9Cgl9Cglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJcHJpbnRmKCIlaSAiLCB2ZXRMW2ldKTsKCX0KCgkvL3NvbWEgY29sdW5hcwoJcHJpbnRmKCJcblNvbWEgZGFzIGNvbHVuYXM6ICIpOwoJaW50IHZldENbbl07Cglmb3IgKGogPSAwOyBqIDwgbjsgaisrKSB7CgkJdmV0Q1tqXSA9IDA7CgkJZm9yIChpID0gMDsgaSA8IG47IGkrKykgewoJCQl2ZXRDW2pdICs9IG1hdFtpXVtqXTsKCQl9Cgl9Cglmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CgkJcHJpbnRmKCIlaSAiLCB2ZXRDW2ldKTsKCX0KCQoJcHJpbnRmKCJcblNvbWEgZGlhZ29uYWwgcHJpbmNpcGFsICVpIGUgc2VjdW5kYXJpYSAlaVxuIiwgc29tYURQLCBzb21hRFMpOwoKCWludCB0ZXN0YUwgPSAxLCB0ZXN0YUMgPSAxOwoJZm9yIChpID0gMTsgaSA8ICBuOyBpKyspIHsKCQlpZiAodmV0TFtpXSAhPSB2ZXRMW2ktMV0pIHsKCQkJdGVzdGFMID0gMDsKCQkJYnJlYWs7CgkJfSBlbHNlIGlmICh2ZXRDW2ldICE9IHZldENbaS0xXSkgewoJCQl0ZXN0YUMgPSAwOwoJCQlicmVhazsKCQl9Cgl9CgkKCWlmICh0ZXN0YUwgJiYgdGVzdGFDICYmIHNvbWFEUCA9PSBzb21hRFMgJiYgc29tYURQID09IHZldExbMF0pIHsKCQlwcmludGYoIlF1YWRyYWRvIG1hZ2ljbyIpOwoJfSBlbHNlIHsKCQlwcmludGYoIlF1YWRyYWRvIG5hbyBtYWdpY28iKTsKCX0KCglyZXR1cm4gMDsKfQo=