当前位置: 代码网 > it编程>编程语言>Java > 使用Java打印出10行的杨辉三角形的完整代码

使用Java打印出10行的杨辉三角形的完整代码

2026年03月17日 Java 我要评论
前言杨辉三角形是一个非常经典的数学图形,它在组合数学中有着重要的地位。每个数是它左上方和右上方的数的和(除了边界上的数)。本文将通过java语言实现一个简单的程序来打印出10行的杨辉三角形。杨辉三角形

前言

杨辉三角形是一个非常经典的数学图形,它在组合数学中有着重要的地位。每个数是它左上方和右上方的数的和(除了边界上的数)。本文将通过java语言实现一个简单的程序来打印出10行的杨辉三角形。

杨辉三角形的定义

杨辉三角形的特点:

  • 每一行的第一个和最后一个数字都是1。
  • 从第三行开始,每个数字等于上一行的两个相邻数字之和。

实现思路

  1. 创建一个二维数组来存储杨辉三角形的值。
  2. 初始化第一列和对角线上的元素为1。
  3. 根据杨辉三角形的规则填充其他位置的值。
  4. 打印二维数组中的值,形成杨辉三角形。

java代码实现

public class yanghuitriangle {
    public static void main(string[] args) {
        int numrows = 10; // 定义杨辉三角形的行数
        printyanghuitriangle(numrows);
    }
    public static void printyanghuitriangle(int numrows) {
        int[][] triangle = new int[numrows][numrows];
        // 填充杨辉三角形
        for (int i = 0; i < numrows; i++) {
            triangle[i][0] = 1; // 每一行的第一个元素
            triangle[i][i] = 1; // 每一行的最后一个元素
            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }
        // 打印杨辉三角形
        for (int i = 0; i < numrows; i++) {
            for (int j = 0; j <= i; j++) {
                system.out.print(triangle[i][j] + " ");
            }
            system.out.println();
        }
    }
}

运行结果

运行上述java程序,将得到以下输出:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
1 6 15 20 15 6 1 
1 7 21 35 35 21 7 1 
1 8 28 56 70 56 28 8 1 
1 9 36 84 126 126 84 36 9 1

杨辉三角形是一个经典的数学结构,每一行的数字都是上一行相邻两个数字之和。下面是一个使用java编写的示例代码,用于打印出10行的杨辉三角形:

public class yanghuitriangle {
    public static void main(string[] args) {
        int rows = 10; // 打印10行
        printyanghuitriangle(rows);
    }

    public static void printyanghuitriangle(int rows) {
        // 创建一个二维数组来存储杨辉三角形的值
        int[][] triangle = new int[rows][rows];

        // 填充杨辉三角形的值
        for (int i = 0; i < rows; i++) {
            triangle[i][0] = 1; // 每一行的第一个元素为1
            triangle[i][i] = 1; // 每一行的最后一个元素为1

            // 计算中间的值
            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }

        // 打印杨辉三角形
        for (int i = 0; i < rows; i++) {
            // 打印空格以对齐三角形
            for (int k = 0; k < rows - i - 1; k++) {
                system.out.print("   ");
            }

            for (int j = 0; j <= i; j++) {
                system.out.printf("%5d", triangle[i][j]);
            }
            system.out.println();
        }
    }
}

代码解释:

  1. 定义主类和主方法:​​yanghuitriangle​​ 类包含 ​​main​​ 方法,作为程序的入口。
  2. 定义打印方法:​​printyanghuitriangle​​ 方法用于生成并打印杨辉三角形。
  3. 创建二维数组:​​triangle​​ 数组用于存储杨辉三角形的值。
  4. 填充数组
  • 每一行的第一个和最后一个元素设置为1。
  • 中间的元素通过上一行的相邻两个元素相加得到。
  1. 打印数组
  • 使用嵌套循环打印杨辉三角形。
  • 外层循环控制行数,内层循环控制每行的元素。
  • 打印前的空格用于对齐三角形。

运行上述代码后,你将看到如下输出:

1
                       1     1
                    1     2     1
                 1     3     3     1
              1     4     6     4     1
           1     5    10    10     5     1
        1     6    15    20    15     6     1
     1     7    21    35    35    21     7     1
  1     8    28    56    70    56    28     8     1
1     9    36    84   126   126    84    36     9     1

杨辉三角形是一个经典的数学问题,它每一行的数字都是上一行相邻两个数字之和。下面我将详细介绍如何使用java来实现打印10行的杨辉三角形。

1. 理解杨辉三角形的结构

杨辉三角形的特点:

  • 第n行有n个数字。
  • 每一行的第一个和最后一个数字都是1。
  • 从第3行开始,每个数字等于它上方两个数字之和。

2. java代码实现

public class yanghuitriangle {
    public static void main(string[] args) {
        int numrows = 10; // 打印10行
        printyanghuitriangle(numrows);
    }

    public static void printyanghuitriangle(int numrows) {
        // 创建一个二维数组来存储杨辉三角形的值
        int[][] triangle = new int[numrows][numrows];

        // 填充杨辉三角形的值
        for (int i = 0; i < numrows; i++) {
            triangle[i][0] = 1; // 每一行的第一个元素是1
            triangle[i][i] = 1; // 每一行的最后一个元素是1

            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
            }
        }

        // 打印杨辉三角形
        for (int i = 0; i < numrows; i++) {
            for (int j = 0; j <= i; j++) {
                system.out.print(triangle[i][j] + " ");
            }
            system.out.println();
        }
    }
}

3. 代码解释

  1. 定义主类和主方法
public class yanghuitriangle {
    public static void main(string[] args) {
        int numrows = 10; // 打印10行
        printyanghuitriangle(numrows);
    }
}

这里定义了一个主类 ​​yanghuitriangle​​ 和主方法 ​​main​​,在主方法中调用了 ​​printyanghuitriangle​​ 方法来打印10行的杨辉三角形。

  1. 创建二维数组并填充杨辉三角形的值
public static void printyanghuitriangle(int numrows) {
    int[][] triangle = new int[numrows][numrows];

    for (int i = 0; i < numrows; i++) {
        triangle[i][0] = 1; // 每一行的第一个元素是1
        triangle[i][i] = 1; // 每一行的最后一个元素是1

        for (int j = 1; j < i; j++) {
            triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j];
        }
    }
}
  • 创建一个 ​​numrows x numrows​​ 的二维数组 ​​triangle​​ 来存储杨辉三角形的值。
  • 使用两层循环来填充数组:
  • 外层循环 ​​i​​ 遍历每一行。
  • 内层循环 ​​j​​ 遍历每一行的每一个元素。
  • 每一行的第一个和最后一个元素设置为1。
  • 其他元素的值等于它上方两个元素之和。
  1. 打印杨辉三角形
for (int i = 0; i < numrows; i++) {
    for (int j = 0; j <= i; j++) {
        system.out.print(triangle[i][j] + " ");
    }
    system.out.println();
}
  • 使用两层循环来打印二维数组中的值。
  • 外层循环 ​​i​​ 遍历每一行。
  • 内层循环 ​​j​​ 遍历每一行的每一个元素,并打印出来。
  • 每打印完一行后,换行。

4. 运行结果

运行上述代码,你将得到以下输出:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1 
1 6 15 20 15 6 1 
1 7 21 35 35 21 7 1 
1 8 28 56 70 56 28 8 1 
1 9 36 84 126 126 84 36 9 1

这就是使用java打印10行杨辉三角形的完整代码和解释。希望对你有所帮助!如果有任何问题或需要进一步的解释,请随时告诉我。

以上就是使用java打印出10行的杨辉三角形的详细内容,更多关于java打印杨辉三角形的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com