求大神

/*

    需求:打印楊輝三角形(行數能夠鍵盤錄入)
    
    1
    1 1    
    1 2 1
    1 3 3 1
    1 4 6 4 1 
    1 5 10 10 5 1

    分析:看這種圖像的規律
        A:任何一行的第一列和最後一列都是1
        B:從第三行開始,每個數據是它上一行的前一列和它上一行的本列之和。
    
    步驟:
        A:首先定義一個二維數組。行數若是是n,咱們把列數也先定義爲n。
          這個n的數據來自於鍵盤錄入。
        B:給這個二維數組任何一行的第一列和最後一列賦值爲1
        C:按照規律給其餘元素賦值
            從第三行開始,每個數據是它上一行的前一列和它上一行的本列之和。
        D:遍歷這個二維數組。
*/
import java.util.Scanner;
class Arr3{
    public static void main(String[] args){
    
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入第一個數據");
        int n = sc.nextInt();
        
        int[][] arr = new int[n][n];
        for(int x=0;x<arr.length;x++){
            arr[x][0]=1;
            arr[x][x]=1;
        }
        
        for(int x=2;x<arr.length;x++){
            for(int y=1;y<arr[x].length;y++){
                arr[x][y]=arr[x-1][y-1]+arr[x-1][y];
            }
        }
    
    
        //遍歷數組
        for(int x=0;x<arr.length;x++){
            for(int y=0;y<=x;x++){
                System.out.print(arr[x][y]);
            }
            System.out.println();
        }
        
    }
}

報錯:

D:\Java學習\記錄\Arr例題>javac Arr3.javajava

 
 

D:\Java學習\記錄\Arr例題>java Arr3
請輸入第一個數據
5
11111Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
at Arr3.main(Arr3.java:48)數組