Você está na página 1de 2

sábado, 4 de novembro de 2023

1)
#include <iostream>

using namespace std;

const int MAX = 10;

bool isMagicSquare(int mat[MAX][MAX], int n) {

int sum1 = 0, sum2 = 0;

for (int i = 0; i < n; i++) {

sum1 += mat[i][i];

for (int i = 0; i < n; i++) {

sum2 += mat[i][n - 1 - i];

if (sum1 != sum2) {

return false;

for (int i = 0; i < n; i++) {

int rowSum = 0, colSum = 0;

for (int j = 0; j < n; j++) {

rowSum += mat[i][j];

colSum += mat[j][i];

if (rowSum != sum1 || colSum != sum1) {

return false;

1
return true;

int main() {

int n;

cout << "Digite o tamanho da matriz (n x n): ";

cin >> n;

int mat[MAX][MAX];

cout << "Digite os elementos da matriz:" << endl;

for (int i = 0; i < n; i++) {

for (int j = 0; j < n; j++) {

cin >> mat[i][j];

if (isMagicSquare(mat, n)) {

cout << "É um quadrado mágico." << endl;

} else {

cout << "Não é um quadrado mágico." << endl;

return 0;

Você também pode gostar