go语言生成杨辉三角形前十行没行第一个都是1
时间: 2024-12-30 07:39:06 浏览: 5
Go语言生成杨辉三角形可以使用递归或者动态规划的方式。这里是一个简单的例子,展示如何使用二维数组来存储并打印出前10行杨辉三角:
```go
package main
import "fmt"
func pascalTriangle(n int) [][]int {
triangle := make([][]int, n)
for i := range triangle {
triangle[i] = make([]int, i+1)
triangle[i][0], triangle[i][i] = 1, 1 // 初始化第一列和最后一列为1
}
// 动态填充三角形
for i := 1; i < n; i++ {
for j := 1; j < i; j++ {
triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j]
}
}
return triangle
}
func printPascalTriangle(triangle [][]int) {
for _, row := range triangle {
fmt.Println(row)
}
}
func main() {
triangle := pascalTriangle(10)
printPascalTriangle(triangle)
}
```
运行这段代码会得到前10行的杨辉三角形,每一行的第一个数都是1,然后由上一行的数字相加得到当前行的其他数值。
阅读全文