Vous êtes sur la page 1sur 2

#include <iostream>

using namespace std;


int** m;
void create_matrix(int n)
{
m = new int* [n];
for (int index = 0; index < n; index++)
{
m[index] = new int(n);
}
return;
}
int main()
{
int n;
cout<<"Please Enter Matrix Order(Odd Number): ";
cin>>n;
if(n%2!=1)
{
cout<<"Please enter odd number"<<endl;
return 0;
}
create_matrix(n);
bool b[n][n];
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
//cout<<m[i][j]<<"-"<<b[i][j]<<";\t";
b[i][j]=false;
}
//cout<<endl;
}
int i,j;
i=n/2;
j=n-1;
//cout<<"Please Enter "<< n*n << " Numbers"<<endl;
for(int k=0;k<n*n;)
{
if(b[i][j])
{
i=i+1;
j=j-2;
if(i==n)i=0;

if(j<0)j=n+j;
}
else
{
//cout<<"Please Enter a Number: ";
m[i][j]=k+1;
k++;
b[i][j]=true;
i--;
j++;
if(i<0) i=n+i;
if(j==n) j=0;
}
}

for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cout<<m[i][j]<<"\t";//<<"-"<<b[i][j]<<";\t";
//b[i][j]=false;
}
cout<<endl;
}
//cout<<"hello"<<endl;
return 0;
}

Vous aimerez peut-être aussi