Java之杨辉三角问题
打印下列所示的杨辉三角
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
代码
package com.fc.Pro_three;
public class Six {
public static void main(String[] args) {
int[][] arr= new int[6][6];
for (int i = 0; i < arr.length; i++) {
for (int j = 0;j<arr[i].length;j++){
// arr[i][j].length=i;
//这里是把首尾先变成1
arr[i][0]=1;
arr[i][i]=1;
//利用矩阵可知道i>j就是左下角,再加上非1判断
if (arr[i][j]!=1&&i>j){
//System.out.println(i+" "+j);
//这里就是杨辉三角的规律,非1的数=它上边的数加上上边的左边那个数
arr[i][j] = arr[i-1][j]+arr[i-1][j-1];
}
//arr[i][arr.length-j-1]=0;
}
}
for (int i = 0; i < arr.length; i++) {
for (int j = 0;j<arr[i].length;j++){
//这里是i>=j因为要把对角线的1也给输出
if (i>=j){
System.out.print(arr[i][j]+"\t");
}
}
System.out.println();
}
}
}
运行结果图
具体的内容我就不在讲了,已经在注释中表明,注意包名类名文件名的更改即可