天天看點

楊輝三角形的兩種方法

//楊輝三角形

    public static void main(String[] args) {

        //第一種寫法

        Scanner cin=new Scanner(System.in);

        System.out.println("請輸入一個正整數:");

        int n=cin.nextInt();

        int trigle[][]=new int[n][n];

        for(int i=0;i<n;i++){

            trigle[i][0]=trigle[i][i]=1;   //第一列和每一行的最後一列,均指派為1

            for(int j=1;j<i;j++){

                trigle[i][j]=trigle[i-1][j]+trigle[i-1][j-1];

            }

        }

        for(int i=0;i<n;i++){

            for(int j=0;j<=i;j++){

                System.out.print(trigle[i][j]+" ");

            }

            System.out.println();

        }

        //第二種寫法

        int num[][]=new int[8][];

        for(int i=0;i<num.length;i++){   //周遊每一行

            num[i]=new int[i+1];   //給每一行定義長度,長度大于1,是以加1

            for(int j=0;j<=num[i].length-1;j++){     //周遊列

                if(i==0||j==0||j==num[i].length-1){      //第一行和第一列和最後一列,指派1

                    num[i][j]=1;

                }else{

                    num[i][j]=num[i-1][j]+num[i-1][j-1];

                }

                System.out.print(num[i][j]+"\t");

            }

            System.out.println();

        }