杨辉三角的样式如下:
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1
它的特征是,每一行的最左边和最右边的元素都是1,而其它元素等于它上方“肩膀”上的两个元素之和。
使用Go语言打印杨辉三角:
package test
import (
"fmt"
)
//行数
const LINES int = 8
//杨辉三角
func ShowYangHuiTriangle() {
nums := []int{}
for i := 0; i < LINES; i++ {
//补空白
for j := 0; j < (LINES - i); j++ {
fmt.Print(" ")
}
for j := 0; j < (i + 1); j++ {
//当前数组长度
var length = len(nums)
//本位置应该生成的数字
var value int
//每行第一个元素和最后一个元素是1,中间的元素等于它上方的两个元素之和
if j == 0 || j == i {
value = 1
} else {
value = nums[length-i] + nums[length-i-1]
}
nums = append(nums, value)
fmt.Print(value, " ")
}
//换行
fmt.Println("")
}
}