Java 杨辉三角打印

要打印杨辉三角,得找出其中每一个元素和其他位置的元素之间的关系,对于一个二维数组来说。

非首元素和非最后一个元素,当前位置的值等于上一行同一列,加上上一行前一列的值。

即yanghui[i][j]=yanghui[i-1][j]+yanghui[i-1][j-1];

首元素是每一行的第一个元素,即每一行的第一列元素。最后一个元素是每个一维数组的最后一个元素,对应的列下角标就是yanghui[i].length-1,因为下角标是从0开始的嘛,所以要减去1。

知道以上的规律就可以用一个for循环嵌套打印出来了。

以下是源码:

public class YangHui

{

public static void main(String[] args)

{

int yanghui[][]=new int[10][];

for(int i=0;i<yanghui.length;i++)

{

yanghui[i]=new int[i+1]; /*yanghui[i]是二维数组当中的每个一维数组,没有定义二维数组的列数,是因为,杨辉三角的每一行

的元素个数不一样,所以需要对每一个一维数组进行开空间,不能将其已经定义好了

*/

for(int j=0;j<yanghui[i].length;j++)

{

if(j==0 || j==(yanghui[i].length)-1)

{

yanghui[i][j]=1;

}

else

{

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

}

}

}

System.out.println("10阶杨辉三角为:");

for(int i=0;i<yanghui.length;i++)

{

for(int j=0;j<yanghui[i].length;j++)

{

System.out.print(yanghui[i][j]+"\t"); //打印当前一维数组的值,每个元素不需要换行

}

System.out.println(); //内循环结束,打印下一个一维数组的值,需要换行

}

}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值