• Java,输出一个10行的杨辉三角


            据图可以发现,杨辉三角是每行的首元素和末元素都为1,中间的元素都是等于它上面的元素加上左上角的元素。

            首先,先完成二数组的创建和初始化,第一行的长度为一,第二行的长度为二……以此类推。所以,外元素的初始化可以用循环来创建。

    //1.创建二维数组
    int[][] yangHui = new int[10][];
    //2.使用循环,初始化外层数组元素
    for (int i = 0; i < yangHui.length; i++)
    {
        yangHui[i] = new int[i + 1];
    }

            i是从0开始的,所以要加一,对应相应的外层元素的长度。

            然后,给杨辉三角的首末元素赋值为1.

    //3.给数组首末元素赋值
    for (int i = 0; i < yangHui.length; i++)
    {
        for (int j = 0; j < yangHui[i].length; j++)
        {
            if((j == 0) || (j == yangHui[i].length - 1))
            {
                yangHui[i][j] = 1;
            }
        }
    }

            接着就是非首末部分的赋值。

    //4.给每行非首末元素赋值
    for (int i = 0; i < yangHui.length; i++)
    {
        for (int j = 0; j < yangHui[i].length; j++)
        {
            if(j != 0 && j != yangHui[i].length - 1)
            {
                yangHui[i][j] = yangHui[i - 1][j] + yangHui[i - 1][j - 1];//每个元素等于它的上一个元素加上左上角的元素
            }
        }
    }

            最后代码如下所示:

    1. class exercise
    2. {
    3. public static void main(String[] args)
    4. {
    5. //杨辉三角
    6. //1.创建二维数组
    7. int[][] yangHui = new int[10][];
    8. //2.使用循环,初始化外层数组元素
    9. for (int i = 0; i < yangHui.length; i++)
    10. {
    11. yangHui[i] = new int[i + 1];
    12. }
    13. //3.给数组首末元素赋值
    14. for (int i = 0; i < yangHui.length; i++)
    15. {
    16. for (int j = 0; j < yangHui[i].length; j++)
    17. {
    18. if((j == 0) || (j == yangHui[i].length - 1))
    19. {
    20. yangHui[i][j] = 1;
    21. }
    22. }
    23. }
    24. //4.给每行非首末元素赋值
    25. for (int i = 0; i < yangHui.length; i++)
    26. {
    27. for (int j = 0; j < yangHui[i].length; j++)
    28. {
    29. if(j != 0 && j != yangHui[i].length - 1)
    30. {
    31. yangHui[i][j] = yangHui[i - 1][j] + yangHui[i - 1][j - 1];//每个元素等于它的上一个元素加上左上角的元素
    32. }
    33. }
    34. }
    35. //遍历二维数组
    36. for(int i = 0;i < yangHui.length;i++)
    37. {
    38. for (int j = 0; j < yangHui[i].length; j++)
    39. {
    40. System.out.print(yangHui[i][j] + "\t");
    41. }
    42. System.out.println();
    43. }
    44. }
    45. }

     输出如图所示:

                    

  • 相关阅读:
    华为云数据库战略启示录
    127. 单词接龙
    《Java并发编程的艺术》读书笔记 - 第六章 - Java并发容器和框架
    The 2022 ICPC Asia Regionals Online Contest (I)
    移除数组中指定元素的所有数
    考试宝导出文件
    macos苹果电脑清理软件有哪些?cleanmymac和腾讯柠檬哪个好
    Docker 问题记录
    2023年,千万别裸辞....
    JSON和全局异常处理
  • 原文地址:https://blog.csdn.net/2302_79468488/article/details/133965600