JAVA经典算法(三十三)

题目:打印出杨辉三角形(要求打印出10行如下图)     

1  

1   1  

1   2   1  

1   3   3   1  

1   4   6   4   1  

1   5   10   10   5   1  

package cn.ls.lanqiao;


public class Test33 {

	public static void main(String[] args) {
		int[][] ls = new int[10][10];
		// 先打印最外边的1
		for (int i = 0; i < ls.length; i++) {
			for (int j = 0; j <= i; j++) {
				if (i == j) {
					ls[i][j] = 1;
				}
			}
		}
		// 打印第一列剩下的1
		for (int i = 1; i < ls.length; i++) {
			ls[i][0] = 1;
		}
		// 打印中间变化的数
		for (int i = 2; i < ls.length; i++) {
			for (int j = 1; j < i; j++) {
				ls[i][j] = ls[i - 1][j - 1] + ls[i - 1][j];
			}
		}
		// 遍历输出10行杨辉三角形
		for (int i = 0; i < 10; i++) {
			for (int j = 0; j <= i; j++) {
				System.out.print(ls[i][j] + " ");
			}
			System.out.println();
		}
	}
}
发布了151 篇原创文章 · 获赞 164 · 访问量 9779

猜你喜欢

转载自blog.csdn.net/ls_wifi/article/details/104089862