Java学习项目:杨辉三角

杨辉三角

编程实现

  • 思路:用二维数组来报错杨辉三角形的元素

1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 … … \begin{matrix} &1\\ &1 &1\\ &1 &2 &1\\ &1 &3 &3 &1\\ &1 &4 &6 &4 &1\\ &…… \end{matrix} 111111234136141

边界: a [ i ] [ 0 ] = i , a [ i ] [ i ] = 1 , ∈ [ 1 , n ] a[i][0] = i, a[i][i] = 1,\in[1,n] a[i][0]=i,a[i][i]=1,[1,n]

内部: a [ i ] [ j ] = a [ i − 1 ] [ j − 1 ] + a [ i − 1 ] [ j ] , i ∈ [ 2 , n ] , j ∈ [ 1 , i − 1 ] a[i][j] = a[i-1][j-1]+a[i-1][j],i \in[2, n],j\in[1, i-1] a[i][j]=a[i1][j1]+a[i1][j],i[2,n],j[1,i1]

  • net.zwh.task.t08中创建Task08

    在这里插入图片描述
package net.zwh.task.t08;

/**
 * 功能:打印杨辉三角形
 */

public class Task08 {
    public static void main(String[] args) {
        // 声明部分
        int[][] a = new int[15][];
        // 确定每行元素个数与行数一致(第1行1个元素,第2行2个元素,第3行3个元素……第n行n个元素)
        // i是从0开始计数,所以计算每行元素时需要在i上加1
        for (int i = 0; i < a.length; i++) {
            a[i] = new int[i+1];
        }

        // 编辑赋值
        for (int i = 0; i < a.length; i++) {
            a[i][0] = 1;  // 左边界
            a[i][i] = 1;  // 右边界
        }
        // 内部元素采用递推公式计算
        for (int i = 2; i < a.length; i++) {
            for (int j = 1; j < i; j++) {
                a[i][j] = a[i-1][j-1] + a[i-1][j];
            }
        }
        // 输出杨辉三角形
        for (int i = 0; i < a.length; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print(a[i][j] + "\t");
            }
            System.out.println();
        }
    }
}

  • 杨辉三角的数据没有问题,但是格式不好看,需要处理后输出。
    在这里插入图片描述

  • 修改 在这里插入图片描述

  • 运行程序,查看结果
    在这里插入图片描述

  • 将杨辉三角形显示成等腰三角形
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值