杨辉三角大家都不陌生吧,这是编程入门级别的案例
今天将会给大家展示Java 和python版本的杨慧三角
注意 : 如何处理好一维数组的第一行是解决问题的关键
希望送给你的是思考的方式,而不是简单、枯燥的代码
python 版本
def getYangHui(row):
rows = [[],[1],[1,1]]
for i in range(3,row+1):
item =[None]*i
item[0] , item[i-1] =1,1
for j in range(1,i-1):
item[j] = rows[i-1][j-1] + rows[i-1][j]
rows.append(item)
printYanghui(rows)
def printYanghui(rows):
for index in range(1,len(rows)):
string =''
for elem in rows[index]:
string = string + str(elem)+' '
print(string.center(20,' '))
#杨辉三角
#row = eval(input('输入行数:'))
row = 4
getYangHui(row)
运行结果
Java版本
Scanner scanner = new Scanner(System.in);
int n = Integer.parseInt(scanner.nextLine());
int[][] array = new int[n + 1][n + 1];
for (int i = 1; i <= n; i++) {
array[i][0] = array[i][i - 1] = 1;
for (int j = 1; j < i; j++) {
array[i][j] = array[i - 1][j - 1] + array[i - 1][j];
}
}
// 输出二维数组
for (int i = 1; i <= n; i++) {
for (int j = 0; j < i; j++) {
System.out.print(array[i][j] + " ");
}
System.out.println();
}
运行结果
无