JAvaは1次元配列を用いて楊輝三角形を出力する

1379 ワード

タイトル:楊輝三角形の最初の10行を印刷して、楊輝三角形の前のいくつかの行は以下のように並べます:1  1 1  1 2 1  1 3 3 1  1 4 6 4 1  1 5 10 10 5 1  JAvaコード実装:
public class YangHui {
	public static void main(String[] args) {
		int[] uprowData = new int[10];// uprowData          
		//i         
		for (int i = 1; i <= 10; i++)
			// j          
			for (int j = 0; j < i; j++) {
				//        
				if (j == 0) {
					//        
					if (i == 1) {
						System.out.println("1 ");
					} else {
						System.out.format("%-5s", "1");
					}
					//          1
					uprowData[0] = 1;
					continue;
				}
				//         
				if (j == i - 1) {
					//        1
					System.out.println("1 ");
					
					//      
					for (int k = j - 1; k > 0; k--) {
						
						uprowData[k] = uprowData[k - 1];
					}
					//            1
					uprowData[0] = uprowData[j] = 1;
					break;
				}
				
				System.out.format("%-5s", uprowData[j - 1] + uprowData[j]);
				uprowData[j - 1] = uprowData[j - 1] + uprowData[j];
		}
	}
}

入力:
1 
1    1 
1    2    1 
1    3    3    1 
1    4    6    4    1 
1    5    10   10   5    1 
1    6    15   20   15   6    1 
1    7    21   35   35   21   7    1 
1    8    28   56   70   56   28   8    1 
1    9    36   84   126  126  84   36   9    1