java杨辉三角实现

public class 杨辉三角{
public static void main(String[] args){
YH a = new YH();
Scanner s = new Scanner(System.in);
System.out.println("请输入杨辉三角行数:");
String str = s.nextLine();
a.show(Integer.valueOf(str));
}
}
class YH
{
public void show(int n)
{
int[][] s = new int[n+1][n+1]; //定义二维数组,因为是n行,所以定义n+1,防止溢出
for (int x=1;x<=n ;x++ ) //此循环用于控制杨辉三角行数
{
for (int z=1;z<=n+1-x ;z++ ) //此循环用于控制每行前面的空格数
{
System.out.print(" ");
}
for (int y=1;y<=x ;y++ ) //此循环用于控制每行个数
{
if (y==1) //固定每行第一个数的值
{
System.out.print(y+" ");
s[x][y]=1;
}
else if(y==x) //固定每行最后一个数的值
{
System.out.print(1+" ");
s[x][y]=1;
}
else //用于输出每行的中间数值
{
System.out.print(s[x-1][y-1]+s[x-1][y]+" ");
s[x][y]=s[x-1][y-1]+s[x-1][y];
}
}
System.out.println();
}
}
}

posted @ 2018-04-03 20:29  G小斌  阅读(180)  评论(0编辑  收藏  举报