使用for循环输出杨辉三角形

时间:2024-11-17 07:44:11

杨辉三角形
实例说明
       杨辉三角形由数字排列,可以把它看作一个数字表,其基本特性是两侧数值均为1,其它位置的数值是其正上方的数值与左上角数值之和。

实现过程
       首先在类的主方法中创建一个二维数组,并且指定二维数组的第一维长度,这个数组用于存放杨辉三角形的数值表,通过双层for循环来实现第二维数组的长度,然后计算整个数组的每个元素的值。

代码:

public class YangHui {
   public static void main(String[] args) {
	 int f[][]=new int[10][];
	 //遍历数组的第一层
	 for (int i = 0; i < ; i++) {
		f[i]=new int[i+1];//初始化第二层的数组大小
		//遍历第二层数组
		for(int j=0;j<=i;j++) {
			
			if (i==0||j==0||j==i) {
				f[i][j]=1;   //将两侧数组元素值赋为1
			}
			else {
				f[i][j]=f[i-1][j]+f[i-1][j-1];
			}
			(f[i][j]+"\t");//输出数组元素
		}
		();  //换行
	}
	
   }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

运行结果:
在这里插入图片描述
解题思路:
       (1)在创建二维数组时,其第一维的长度即是要输出杨辉三角形的行数。例如,在本实例中,要输出10行的杨辉三角形就可以将其第一维的长度设置为10.
       (2)java语言中的二维数组其实是每个元素都是一个一维数组的一维数组,所以第二维的长度可以任意,就像本例中那样。这比其他语言更灵活而且多维数组也是如此。

技术要点:
       杨辉三角型的公式包括两个部分,一部分是两侧数值都是1,也就是说二维数组的f[0][0]、f[i][0]或者f[i][i]元素值为1,另一部分是其它位置的数值是其正上方的数值与左上角数值之和,也就是
f[i][j]=f[i-1][j]+f[i-1][j-1].
注: 在二维数组中,第1个下标值代表的是行数,第2个下标值代表的是列数,即f[i][0]代表的是第i行第0列的元素