Java 实现杨辉三角打印 - 代码示例与解释

本文提供一个用 Java 代码实现的打印杨辉三角的程序,并附带详细的代码注释和解释。程序可以根据用户输入的行数,打印出相应的杨辉三角形。

代码示例

import java.util.Scanner;

public class YangHuiTriangle {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print('请输入要打印的杨辉三角的行数:');
        int n = scanner.nextInt();

        int[][] triangle = new int[n][n];
        // 初始化第一列和对角线上的数字为1
        for (int i = 0; i < n; i++) {
            triangle[i][0] = 1;
            triangle[i][i] = 1;
        }
        // 计算其他位置上的数字
        for (int i = 2; i < n; i++) {
            for (int j = 1; j < i; j++) {
                triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
            }
        }
        // 打印杨辉三角
        for (int i = 0; i < n; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.printf('%4d', triangle[i][j]);
            }
            System.out.println();
        }
    }
}

代码解释

  1. 获取用户输入: 使用 Scanner 类从控制台获取用户输入的杨辉三角的行数 n。
  2. 创建二维数组: 创建一个二维数组 triangle 来存储杨辉三角的数字。数组大小为 n 行 n 列,因为杨辉三角是一个等腰三角形。
  3. 初始化第一列和对角线: 初始化 triangle 数组的第一列和对角线上的数字为 1。这是杨辉三角的初始条件。
  4. 计算其他位置上的数字: 通过两层循环,计算 triangle 数组中除第一列和对角线以外的所有位置上的数字。每个数字等于其上方两个数字之和。
  5. 打印杨辉三角: 使用两层循环打印 triangle 数组中的所有数字。使用 System.out.printf('%4d', triangle[i][j]) 控制输出格式,使数字左对齐并占据 4 个字符的位置。

程序运行示例

假设用户输入 5,程序将打印以下杨辉三角形:

   1
   1  1
   1  2  1
   1  3  3  1
   1  4  6  4  1

总结

本文介绍了如何使用 Java 代码实现打印杨辉三角。代码逻辑清晰,易于理解,并附带详细的代码注释和解释。希望本文能够帮助您更好地理解杨辉三角的算法实现。


原文地址: https://www.cveoy.top/t/topic/pbkz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录