LehaMechanic,
Код:
#include <stdio.h>
void main()
{
const int Height = 2;
const int Weight = 2;
int matrix[Height][Weight]= { {0, 0}, {0, 0} };
int sumINSTR = 0; //сумма в строках
int sumINSTB = 0; //сумма в столбцах
int DYAG1 = 0; //cумма в одной диагонали.
int DYAG2 = 0; //сумма в другой диагонали.
//Суммируем с строках
for(int i = 0;i<Height;i++){
for(int j = 0;j<Weight;j++){
sumINSTR+=matrix[i][j];
}
}
//Суммируем в столбцах
for(int t = 0;t<Weight;t++){
for(int j = 0;j<Height;j++){
sumINSTB+=matrix[t][j];
}
}
//Если матрица не квадратная возможен выход за буфер по строке
//Суммируем в одной диагонали
for(int p = 0, j = 0; p<Weight; p++,j++){
DYAG1+=matrix[p][j];
}
//Если матрица не квадратная возможен выход за буфер по строке
//Суммируем в другой диагонали
for(int g = 0, k = Weight-1; k>=0; g++,k--){
DYAG2+=matrix[g][k];
}
//Выводим суммы----------------
printf("%d",sumINSTR);printf("\n");
printf("%d",sumINSTB);printf("\n");
printf("%d",DYAG1);printf("\n");
printf("%d",DYAG2);printf("\n");
//-----------------------------
int CONTROL = sumINSTR;
//Проверка
if((sumINSTB==CONTROL)&&(DYAG1==CONTROL)&&(DYAG2==CONTROL)){
printf("Magic Matrix\n");
}
return;
}
вот