1个回答
展开全部
不懂的话可以继续追问哈-----代码实现如下:
public class Test {
public static void init(int n){
int[][]yh = new int[n][2*n-1];
for(int i=0;i<yh.length;i++){
//设置第一行的值
yh[0][n-1] = 1;
//设置最后一行两边的两个值
yh[n-1][0] = yh[n-1][2*n-2] = 1;
for(int j=0;j<i;j++){
try{
//利用杨辉三角的性质进行逐行值的设置
//碰到下标溢出的情况不设置
yh[i][n-i-1+2*j]=yh[i][n+i-1-2*j]=yh[i-1][n-i-2+2*j]+yh[i-1][n-i+2*j];
}catch(Exception e){}
}
}
print(yh);
}
//进行数组的打印
public static void print(int[][]k){
for(int i=0;i<k.length;i++){
for(int j=0;j<k[i].length;j++){
if(k[i][j]!=0){
System.out.print(k[i][j]);
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
public static void main(String[]args){
init(5);
}
}
public class Test {
public static void init(int n){
int[][]yh = new int[n][2*n-1];
for(int i=0;i<yh.length;i++){
//设置第一行的值
yh[0][n-1] = 1;
//设置最后一行两边的两个值
yh[n-1][0] = yh[n-1][2*n-2] = 1;
for(int j=0;j<i;j++){
try{
//利用杨辉三角的性质进行逐行值的设置
//碰到下标溢出的情况不设置
yh[i][n-i-1+2*j]=yh[i][n+i-1-2*j]=yh[i-1][n-i-2+2*j]+yh[i-1][n-i+2*j];
}catch(Exception e){}
}
}
print(yh);
}
//进行数组的打印
public static void print(int[][]k){
for(int i=0;i<k.length;i++){
for(int j=0;j<k[i].length;j++){
if(k[i][j]!=0){
System.out.print(k[i][j]);
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
public static void main(String[]args){
init(5);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询