杨辉三角,倒杨辉三角

问题:输出杨辉三角

分析:

1,第一列和i==j的时候,都是1

2,其他都是上一行的对应列和前一列的和

3,使用数组来做

代码:

    int a[10][10],i,j;

    for(i=0;i<10;i++){

        for(j=0;j<10;j++){

            if(j==0 || i==j){

                //如果是第一列或者是对角都是1

                a[i][j]=1;

            }else{

                a[i][j]=a[i-1][j]+a[i-1][j-1];

            }

        }

    }

    int k;

    for(i=0;i<10;i++){

        for(k=0;k<10-i;k++){

            printf("  ");

        }

        for(j=0;j<=i;j++){

            printf("%-3d ",a[i][j]);

        }

        printf("\n");

    }

结果截图:


杨辉三角

倒杨辉三角:

代码:

#include <iostream>

#include <iomanip>

using namespace std;

int main()

{

    int n;

    while(cin>>n){

        int **a=new int* [n];

        for(int i=0;i<n;i++){

            a[i]=new int[n];

        }

        for(int i=0;i<n;i++){

            for(int j=0;j<=i;j++){

                if(j==0||i==j){

                    a[i][j]=1;

                }else{

                    a[i][j]=a[i-1][j]+a[i-1][j-1];

                }

            }

        }

        for(int i=n-1;i>=0;i--){

            int m=i;

            for(int k=0;k<n-m-1;m++){

                cout<<"  ";

            }

            for(int j=0;j<=i;j++){

                cout<<std::right<<setw(3)<<a[i][j]<<"  ";

            }

            cout<<endl;

        }

        cout<<endl;

    }

    return 0;

}

结果:

倒杨辉三角
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容