编写一个Go程序,使用for循环打印空心左侧帕斯卡三角形星形图案。
package main
import "fmt"
func main() {
var i, j, k, row int
fmt.Print("Enter Hollow Left Pascals Star Pattern Rows = ")
fmt.Scanln(&row)
fmt.Println("Hollow Left Pascals Star Triangle Pattern")
for i = 1; i <= row; i++ {
for j = row; j > i; j-- {
fmt.Printf(" ")
}
for k = 1; k <= i; k++ {
if k == 1 || k == i {
fmt.Printf("*")
} else {
fmt.Printf(" ")
}
}
fmt.Println()
}
for i = 1; i <= row-1; i++ {
for j = 1; j <= i; j++ {
fmt.Printf(" ")
}
for k = row - 1; k >= i; k-- {
if k == row-1 || k == i {
fmt.Printf("*")
} else {
fmt.Printf(" ")
}
}
fmt.Println()
}
}

这个 Go示例 打印指定字符的空心左侧帕斯卡三角形。
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var i, j, k, row int
fmt.Print("Enter Hollow Left Pascals Star Pattern Rows = ")
fmt.Scanln(&row)
fmt.Print("Character to Print in Hollow Left Pascals Triangle = ")
ch, _, _ := reader.ReadRune()
fmt.Println("Hollow Left Pascals Triangle Pattern")
for i = 1; i <= row; i++ {
for j = row; j > i; j-- {
fmt.Printf(" ")
}
for k = 1; k <= i; k++ {
if k == 1 || k == i {
fmt.Printf("%c", ch)
} else {
fmt.Printf(" ")
}
}
fmt.Println()
}
for i = 1; i <= row-1; i++ {
for j = 1; j <= i; j++ {
fmt.Printf(" ")
}
for k = row - 1; k >= i; k-- {
if k == row-1 || k == i {
fmt.Printf("%c", ch)
} else {
fmt.Printf(" ")
}
}
fmt.Println()
}
}
Enter Hollow Left Pascals Star Pattern Rows = 15
Character to Print in Hollow Left Pascals Triangle = $
Hollow Left Pascals Triangle Pattern
$
$$
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$ $
$$
$