注册 登录
编程论坛 JAVA论坛

[求助]杨辉三角形,怎么编译不了

zj244514258 发布于 2015-04-20 21:58, 482 次点击
class HomeWork {
    public static void main(String[] args) {
        int[][] Arr = new int[x][y];
        for(int x = 0;x <= 10;x++){
            for(int y = 0;y <= x;y++){
                if(x == 0 || y == 0 || x == y){
                    Arr[x][y] = 1;
                }else{
                    Arr[x][y] = Arr[x - 1][y - 1] + Arr[x - 1][y];
                }
                System.out.print(Arr[x][y] + "\t");
            }
            System.out.println();
        }        
    }
}
2 回复
#2
秦时的明月夜2015-04-21 09:10
你的x,y定义了么?没定义也没给初值……int[][] arr=new in[x][y]不要用x,y;和下面的矛盾……比如m=10;n=10;int[][] arr=new in[m][n];
#3
凌风zx2015-04-21 09:29
new int[x][y];中x和y未声明,未初始化
public class HomeWork {
    public static void main(String[] args) {
        int[][] Arr = new int[11][11];
        for (int x = 0; x <= 10; x++) {
            for(int z=0;z<Math.round((11-x)/2.0);z++){//Math.round();四舍五入
                System.out.print("\t");//打印前面的空格
            }
            for (int y = 0; y <= x; y++) {
                if (x == 0 || y == 0 || x == y) {
                    Arr[x][y] = 1;
                } else {
                    Arr[x][y] = Arr[x - 1][y - 1] + Arr[x - 1][y];
                }
                if(x%2!=0&&y==x/2){
                    System.out.print(Arr[x][y] + "\t\t");//奇数行中间的值多加一个空格为了好看
                }
                else{
                    System.out.print(Arr[x][y] + "\t");
                }
            }
            System.out.println();
        }
    }
}
1