codice:
#include <iostream>
using namespace std;
int read (int[3][3],int ,int,int);
int somma (int[3][3],int,int,int);
int diff (int[3][3],int,int,int);
int rotation (int[3][3],int,int,int,int[3][3],int,int);
int main()
{const int size=3;
int m[size][size];
int f[size][size];
int i,j,i2,j2;
read (m,i,j,size);
cout<<"La somma degli elementi della prima e ultima riga è "<<somma(m,i,j,size)<<endl;
cout<<"La differenza tra gli elementi della prima e ultima colonna è "<<diff(m,i,j,size)<<endl;
if( ( somma(m,i,j,size) + diff(m,i,j,size) )!=0)
{rotation(m,i,j,size,f,i2,j2);}
for(i2=0;i2<size;i2++)
{for(j2=0;j2<size;j2++)
{cout<<f[i2][j2]<<endl;
}
}
}
int read (int k[3][3],int r,int c,int d)
{cout <<"Inserisci la matrice"<<endl;
for(r=0;r<d;r++)
{for(c=0;c<d;c++)
cin>>k[r][c];
}
return k[3][3];
}
int somma(int k[3][3],int r,int c,int d)
{int sum=0;
for(r=0;r<d;r++)
{for (c=0;c<d;c++)
{if(r==0 || r==d-1)
sum=sum+k[r][c];
}
}
return sum;
}
int diff(int k[3][3],int r,int c,int d)
{int dif=2*k[0][0];
for(r=0;r<d;r++)
{for(c=0;c<d;c++)
{if(c==0 || c==d-1)
dif=dif-k[r][c];
}
}
return dif;
}
int rotation(int k[3][3],int r,int c,int d,int g[3][3],int r2,int c2)
{r2=0;
c2=2;
for(r=0;r<d;r++ && c2--)
{for(c=0;c<d;c++ && r2++)
{g[r2][c2]=k[r][c];
}
}
return g[3][3];
}