
Сообщение от
Folko
AlisherIITU, а в чем проблема? Находите 1 значение из всего этого, и начинаете сверять сначала все строки (в цикле), потом столбы, потом диагонали. Если хоть одно значение не совпадает, значит квадрат не магический
Вот посмотрите исправьте если че, а как дальше продолжить?
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
| #include <iostream>
using namespace std;
int main ()
{
int arr[100][100];
int n;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
cin>>arr[i][j];
}
//sum rows
int rows[100];
for(int i=0;i<n;i++)
{ for(int j=0;j<n;j++)
rows[i]+=arr[i][j];
cout<<rows[i]<<endl;
}
//sum column
int column[100];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
column[j]+=arr[i][j];
cout<<column[j]<<endl;
}
//sum main diagonal
int main = 0;
for(int i=0;i<n;i++)
main+= arr[i][i];
cout<<main<<endl;
//sum second diagonal
int second = 0;
for(int i=0;i<n;i++)
second+= arr[i][n-i-1]; |
|