您的位置:首页 > 其它

打印杨辉三角--for循环

2017-04-30 00:23 120 查看

要求打印7行直角杨辉三角

杨辉三角特点:

第1行和第2行数字都为1;

从第三行开始,除去开头和结尾数字为1,中间数字为上一行斜对角两个数字的和。

如下图:



打印结果:



代码如下:

package 杨辉三角;

public class Test2 {
public static void main(String[] args){
//建立以数组用于存储上一行的数据,因为是从第三行开始中间数是上一行斜对角的两数之和
//所以开始先存第二行的数据,然后在每次用完数组后,改变数组的长度,存储当前行的数据,
//用于下一行数据的计算
int k=2;
int[] temp=new int[k];
temp[0]=temp[k-1]=1;

for(int i=1;i<8;i++){
//建立数组,存取当前行数据
int[] arr=new int[i];
//给当前行数组赋值
for(int j=0;j<i;j++){
//先给第一个和最后一个数赋值
if(j==0||j==i-1){
arr[j]=1;
}else{
//中间数为上一行斜对角的两数之和
arr[j]=temp[j-1]+temp[j];
}
}
//给当前行赋值完毕后让k+1,增加数组长度,用于存取当前行的数据
k++;

4000
temp=new int[k];
//打印当前行数组,并给新temp赋值,便于下一行使用当前行数据
for(int y=0;y<arr.length;y++){
temp[y]=arr[y];
System.out.print(arr[y]+" ");
}
System.out.println();
}
}
}


扩展延伸:

通过后台控制打印几行,并要求打印出来的是等腰三角形
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: