言不由衷~ 2021-12-18 16:14 采纳率: 0%
浏览 22
已结题

关于拉丁方阵的数量问题

我只是按一个环形进行举例,明显少了很多,但是又找不到规律,不知道该怎么做

img

img

  • 写回答

2条回答 默认 最新

  • 言不由衷~ 2021-12-18 16:15
    关注

    这是我写的代码
    #include
    using namespace std;
    int main(){
    int a,b,c,d,n,e=1;
    cout<<"请输入数n"<<endl;
    cin>>n;
    int *l=new int [n];
    for(int i=0;i<n;i++){
    l[i]=i+1;
    }
    cout<<"不同n阶拉丁方阵为"<<endl;
    if(n<=2){
    for(int i=0;i<n;i++){
    for(int a=1;a<=n;a++){
    for(int b=a;b<=n;b++){
    cout<<l[b-1]<<" "<<"\t";
    }
    for(int c=1;c<a;c++){
    cout<<l[c-1]<<" "<<"\t";
    }cout<<endl;
    }for(int d=n-1;d>0;d--){
    l[d]=l[d-1];}
    l[0]=l[n-1]+1;
    cout<<endl<<endl;
    }
    }
    if(n>2){
    for(int i=0;i<n;i++){
    for(int a=1;a<=n;a++){
    for(int b=a;b<=n;b++){
    cout<<l[b-1]<<" "<<"\t";
    }
    for(int c=1;c<a;c++){
    cout<<l[c-1]<<" "<<"\t";
    }cout<<endl;
    }for(int d=n-1;d>0;d--){
    l[d]=l[d-1];}
    l[0]=l[n-1]+1;
    cout<<endl<<endl;
    }
    }}

    评论

报告相同问题?

问题事件

  • 系统已结题 12月26日
  • 创建了问题 12月18日