Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define LARGURA 4
- int quadradoMagico(int quadrado[LARGURA][LARGURA]) {
- int magico = 1, c, l;
- int soma[2*LARGURA+2];
- for(l = 0; l != (2*LARGURA+2); l++) {
- soma[l] = 0;
- }
- for(l = 0; l != LARGURA; l++) {
- for(c = 0; c != LARGURA; c++) {
- soma[l] += quadrado[l][c];
- soma[l + LARGURA] += quadrado[c][l];
- if(l == c) {
- soma[(2*LARGURA)] += quadrado[l][c];
- }
- if((l+c) == (LARGURA-1)) {
- soma[(2*LARGURA+1)] += quadrado[l][c];
- }
- }
- }
- //just for debug
- for(l = 0; l != (2*LARGURA+2); l++) {
- printf("%d -> %d\n",l,soma[l]);
- }
- for(magico = 1, c = 0; c != 2*LARGURA+2; c++) {
- if(soma[0] != soma[c]) {
- magico = 0;
- break;
- }
- }
- return magico;
- }
- int main() {
- /*int matrix[LARGURA][LARGURA] = {
- {6, 1, 8},
- {7, 5, 3},
- {2, 9, 4}
- };*/
- int matrix[LARGURA][LARGURA] = {
- {1, 12, 6, 15},
- {8, 13, 3, 10},
- {11, 2, 16, 5},
- {14, 7, 9, 4}
- };
- int quadradoM = quadradoMagico(matrix);
- printf("É magico ? %d\n", quadradoM);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement