未来_我来
因为渴望改变,所以必须努力

题目:打印出杨辉三角形


程序分析:
        1
       1 1
      1 2 1
     1 3 3 1
    1 4 6 4 1
   1 5 10 10 5 1

定义的是二维数组,为了使输出的结果看起来漂亮一点,可以用forint k=0; k<2*(10-i)-1; k++)控制输出的空格,这个循环是在控制行数的循环里面,控制列数的循环外面。

 

 1 package com.li.FiftyAlgorthm;
 2 
 3 /**
 4  * 题目:打印出杨辉三角形(要求打印出10行如下图)
 5             1
 6            1 1
 7           1 2 1
 8          1 3 3 1
 9         1 4 6 4 1
10        1 5 10 10 5 1
11  *  a[i][j]=a[i-1][j]+a[i-1][j-1] 就是这个程序的核心
12  * 
13  * @author yejin
14  */
15 public class YangTriangle {
16     public static void main(String[] args) {
17         int[][] a = new int[10][10];
18         for (int i = 0; i < 10; i++) {
19             a[i][i] = 1;
20             a[i][0] = 1;
21         }
22         for (int i = 2; i < 10; i++) {
23             for (int j = 1; j < i; j++) {
24                 a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
25             }
26         }
27 
28         for (int i = 0; i < 10; i++) {
29             for (int k = 0; k < 2 * (10 - i) - 1; k++) {
30                 System.out.print(" ");
31             }
32             for (int j = 0; j <= i; j++) {
33                 System.out.print(a[i][j] + "   ");
34             }
35             System.out.println();
36         }
37     }
38 }

 

posted on 2017-07-09 22:26  未来_我来  阅读(412)  评论(0编辑  收藏  举报

2 3
4