杨辉三角算法
将杨辉三角当作一个二维数组,开头和末尾都为1数组
第一行和第二行已经被前面的1给赋值了,因此咱们直接从第三行开始赋值,a[2][1]
开始,由于下标是从0开始的,a[2][1] = a[1][0]+a[1][1]
,也就是等于2,依次递推下去code
打印(for循环),每打印出一行则换一行,System.out.println
blog
个人打印处理没有处理好,若是数组有两位数,打印出来就不是很美观for循环
Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[][] a = new int [n][n]; //初始化条件,头部和尾部都是为1 for(int i=0;i<n;i++){ a[i][0]=1; a[i][i]=1; } //第3行开始,下标为2 for(int i=2;i<n;i++){ //列从第二个开始,到倒数第二个,下标为1到n-1 for(int j=1;j<n-1;j++){ a[i][j] = a[i-1][j-1]+a[i-1][j]; } } for(int i=0;i<n;i++){ //画开头空格 for(int m=n-i-1;m>0;m--){ System.out.print(" "); } for(int j=0;j<=i;j++){ System.out.print(a[i][j]+" "); } System.out.println(""); //一行结束换行 }