?? magic.cpp
字號:
#include<iostream>
#include<string.h>
using namespace std;
void main()
{
int i,j,n;
cout<<"請輸入魔方的階數(shù):";
cin>>n;
while(n<1||n%2==0)
{
cout<<"輸入的階數(shù)錯誤!\n請輸入魔方的階數(shù):";
cin>>n;
}
int **N=new int *[n];
for(i=0;i<n;i++)
N[i]=new int[n];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
N[i][j]=0;
i=0;j=(n-1)/2;
N[i][j]=1;
for(int k=2;k<=n*n;k++)
{
i--;
j--;
if((i==-1)&&(j==-1))
{
i=1;j=0;
}
else if(i==-1)
{
i=n+i;
}
else if(j==-1)
{
j=n+j;
}
if(N[i][j]!=0)
{
i+=2;
j++;
N[i][j]=k;
}
else N[i][j]=k;
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(N[i][j]>=100)
cout<<" "<<N[i][j];
else if(N[i][j]>=10)
cout<<" "<<N[i][j];
else
cout<<" "<<N[i][j];
}
cout<<endl;
}
for(i=0;i<n;i++)
delete []N[i];
delete []N;
getchar();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -