1 / * 33 [プログラム33パスカルの三角形]
2 タイトル:トライアングル(以下10行を印刷するために必要な)プリントアウト
3つの プログラム解析:
4 1
5 1 1
6 1 2 1
7。 1 3 3 1
8 1 4 6 4 1
9 1 5 1 5 10 10
10 * /
11
12である / * 分析:
13 * ======================
14 *パスカルの三角形の特徴:
15 * 1。各番号は、上記2つの数の和に等しいです。
16 数値の対称* 2.各行は、1を徐々に増加させます。
17 * 3 n行目の数がn個のエントリを有します。
18 * =======================
19 ===法の支配================================== ==== ======法============================
20 *後に観察された:
21である 。1
22れる 。1 1
23である 1 1 2。
24 1. 1. 3. 3。
25 1。 6. 1. 4 4
26である 1 5 1 5 10 10
27 最初の行A1 [0] = 1。
28 秒線A2 [0] = 1、A2 = 1 [1];
29 3列目A3の[0] = 1、 A3 [1] A2 = [0] + A2 [1]、A3 [2] = 1;
30 第4行A4の[0] = 1、A4 [1] = A3 [0] + A3 [1]、A4 [ 2] A3 = [1] + A3 [2]、A4 [3] = 1、。。。
31れる ....
32 n行目[0] = 1、 [1](N-1)[0] = +(N-1)[ 1]、[2] =(N-1)[1] +(N-1)[2]、[3] =(N-1)[2] +(N - 1)[3] ...
33であります AN ... [-n-2] = A(N - 1)。N-- 3] A + [2-N-]、AN = 1(1-N-)[1-N-];
34は、
35 ループ出力のために考慮10行!また、ループ配列のための値を変更する
36 の二次元アレイの出力を直接!!!!!!!
37 * ========= ==========のルール
38 *各行NIの前の最初の番号を出力するNI空間、すなわち空間を有する第一のデジタル出力の前に
39 *しないデジタル出力、次いでブランク出力
40 *
41である * /
42で
43である パッケージ宿題、
44で
45の パブリック クラス_33 {
46である
47 公共 静的 ボイドメイン(文字列[]引数){
48 // 2つの10宣言ライン10二次元アレイ
49 INT N- = 10 ;
50 INT[] [] = 新しい新しい INT [N-] [N-]; // 10行及び列10列
51 // 行番号最初のサイクル・コントロール
52がある ためには、(INTが 0 = I、I <N - 、I ++ ){
53である // 第二層ループ制御の列数
54である ため(INT ; J <= I J ++ J = 0 ){
55 // 各行の最初の列の値は行ごとに出力される最後の1である(すなわち、行数が同じ列時間)は1。
56で IF(J == 0 || J == I){
57である [I] [J] = 1 ;
58 }
59 // 残りの場合の値は、2つの数およびそれ以上である
60 他{
61のIS A [I] [J] = A [I - 1] [J - 1] + A [I - 1 ] [J];
62である }
63である // System.out.printf( "%D \ T"、A [ I] [J]); // 出力値
64 }
65 // のSystem.out.println(); // ラップ
66 }
67
68 // 二等辺三角形の出力結果にループのための2つの
69 // 最初一方の出力制御線
70 のための(INT I = 0、I <N - 、I ++ ){
71である // 第2空間層の第一の制御出力部
72 用の(INT ; J <=ニッケル、J = 0 J ++ ){
73は System.out.print( ""の);
74 }
75 // 二番目の配列の制御出力値+の第二層""
76 のための(int型 K = 0; K <= I; K ++ ){
77 のSystem.out .PRINT(A [I] [K] + "" );
78 }
79 のSystem.out.println(); // ラップ
80 }
81
82 }
83 }