Diya

使用数组来打印杨辉三角

根据上一行的内容,来获取下一行的内容并打印出来。

package main
import "fmt"
func GetYangHuiTriangleNextLine(inArr []int) []int {
    var out []int
    var i int
    arrLen := len(inArr)
    out = append(out, 1)
    if 0 == arrLen {
        return out
    }
    for i = 0; i < arrLen-1; i++ {
        out = append(out, inArr[i]+inArr[i+1])
    }
    out = append(out, 1)
    return out
}
func main() {
    nums := []int{}
    var i int
    for i = 0; i < 10; i++ {
        nums = GetYangHuiTriangleNextLine(nums)
        fmt.Println(nums)
    }
}

输出结果为:

[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 8 28 56 70 56 28 8 1]
[1 9 36 84 126 126 84 36 9 1]