#include <iostream>
#include <ctime>
#include <cmath>
using std::cout;
using std::cin;
using std::endl;
int sr_geo(int **arr, int n)
{
int sr_geo=0;
float pr=1;
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
if(i==j)
{
pr*=abs(arr[i][j]);
}
}
}
//cout<<"@"<<pr<<"@";
sr_geo =(int)exp(log((float)pr)/n);
return sr_geo;
}
int main()
{
setlocale(LC_ALL,"Russian");
srand((unsigned)time(NULL));
int n;
int sr;
int **arr;
//cout<<"Введите розмер массива: ";
//cin>>n;
n=4;
arr = new int*[n];
cout<<"Массив: "<<endl;
for(int i=0; i<n; i++)
{
arr[i] = new int[n];
for(int j=0; j<n; j++)
{
arr[i][j]=rand()%9+1;
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
sr = sr_geo(arr,n);
cout<<endl;
cout<<"Сформированая матрица:"<<endl;
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
if((i+j)%2==0)
{
arr[i][j]= sr;
}
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
delete arr;
system("pause");
return 0;
}