java编杨辉三角

来源:百度知道 编辑:UC知道 时间:2024/06/17 07:15:11
要求是只编七行。用调用类的方法做。用一维数组。
我想破了,也没想出来

我给你
你想要几行就几行

package lesson05.exer;

/**
* 用对象的方法打印杨辉三角
*
* @author SunShine
*
*/
public class Exer01 {

public void draw(int h) {
if (h == 0) {
return;
}

if (h > 12) { // 可打印到12行,超过就赋值为可打印最大行数
h = 12;
}

int[][] yh = new int[h][]; // 根据输入值设置二维数组的第一维数

for (int i = 0; i < yh.length; i++) {
yh[i] = new int[i + 1]; // 设置第二维数
yh[i][0] = yh[i][i] = 1; // 对两头的元素赋值为1

for (int j = 1; j < yh[i].length - 1; j++) { // 对中间的元素赋值
yh[i][j] = yh[i - 1][j - 1] + yh[i - 1][j];
}
}

// 打印杨辉三角
for (int i = 0; i < yh.length; i++) {
for (int k = 0; k < h - i - 1; k++) {
System.out.print(" ");
}
System.out.print(yh[i][0] + " ");
for (int j = 1; j < yh[i].length; j++) {
if (yh[i][j] < 10) {