Golang 创建金字塔和图案
在本教程中,我们将学习如何使用 Go 编程语言创建具有不同图案的金字塔。
语法
NESTED FOR LOOP
for [condition | ( init; condition; increment ) | Range] {
for [condition | ( init; condition; increment ) | Range] {
statement(s);
}
statement(s);
}
示例1:使用$创建金字塔和图案的Golang代码
步骤
- 步骤1 - 导入fmt包。
-
步骤2 - 开始函数 main() 。
-
步骤3 - 声明和初始化变量。
-
步骤4 - 使用for循环和递增器。
-
步骤5 - 使用 fmt.Println() 打印结果。
示例
package main
// fmt package provides the function to print anything
import "fmt"
func main() {
// declare the integer variables
var i, j, rows int
rows = 7
// Scanln() reads data from rows and stores it in the places
// specified by the additional arguments in the parameter format
fmt.Scanln(&rows)
fmt.Println("\nGolang program to create pyramid and pattern")
for i = 1; i <= rows; i++ {
for j = 1; j <= rows-i; j++ {
fmt.Print(" ")
}
for k := 0; k != (2*i - 1); k++ {
fmt.Print("$")
}
fmt.Println()
}
}
输出
Golang program to create pyramid and pattern
$$$$$$$$$$$$$$$$$$$$$$$$$$$
代码描述
-
在上面的程序中,首先声明了主包main。
-
我们导入了包fmt,该包包含了fmt包的文件。
-
现在开始 main () 函数,这个函数是可执行程序的入口点。它不需要任何参数,也不返回任何值。
-
声明三个整数变量i,j和rows。将rows变量初始化为您想要的狮子座$的金字塔的整数值。使用 fmt.Scanln () 读取并存储rows值。
-
使用循环:条件给定在if语句内,并在条件成立时停止执行。
-
最后使用 fmt.Println () 函数在屏幕上以金字塔形式打印具有$的模式的结果。
示例2:使用Golang代码创建具有数字模式的金字塔
步骤
-
步骤1 - 导入包fmt和包strconv。
-
步骤2 - 开始函数 main () 。
-
步骤3 - 声明并初始化变量rows。
-
步骤4 - 初始化k = 0,NUM1 = 0,rows = 5,NUM2 = 0。
-
步骤5 - 使用带有条件和递增器的for循环。
-
步骤5 - 使用 fmt.Println () 打印结果。
示例
package main
// fmt package provides the function to print anything
import "fmt"
func main() {
// DECLARE AND INITIALIZE THE INTEGER VARIABLES
var rows, NUM1, NUM2, k int = 5, 0, 0, 0
// USING FOR LOOP
for i := 1; i <= rows; i++ {
k = 0
for space := 1; space <= rows-i; space++ {
fmt.Print(" ")
NUM1++
}
for {
if k == 2*i-1 {
break
}
if NUM1 <= rows-1 {
fmt.Printf("%d ", i+k)
NUM1++
} else {
NUM2++
fmt.Printf("%d ", (i + k - 2*NUM2))
}
k++
}
NUM2, k, NUM1 = 0, 0, 0
fmt.Println("")
}
// PRINT THE PYRAMID WITH NUMBER PATTERN
}
输出
1
2 3 2
3 4 5 4 3
4 5 6 7 6 5 4
5 6 7 8 9 8 7 6 5
代码描述
-
在上述程序中,我们首先声明包main。
-
我们导入了包含fmt包文件的fmt包。
-
现在开始定义 main() 函数,该函数是可执行程序的入口点。它不接受任何参数,也不返回任何内容。
-
声明四个整数变量NUM1、NUM2、k和rows。将rows变量初始化为您希望的数字金字塔模式的整数值。使用fmt.Scanln()读取并存储rows的值。
-
使用for循环条件,条件被放在if语句内,一旦条件正确,就停止执行。
-
最后使用fmt.Println()函数在屏幕上以数字金字塔的形式打印结果。
示例3:使用字母模式创建金字塔的Golang程序代码
步骤
-
步骤1 - 导入包fmt和包strconv。
-
步骤2 - 开始函数 main() 。
-
步骤3 - 声明并初始化变量。
-
步骤4 - 使用带有条件和增量的for循环。
-
步骤5 - 使用 fmt.Println() 打印结果。
示例
package main
// fmt package provides the function to print anything
import "fmt"
func main() {
// declare and initialize the integer variable
var rows int
rows = 7
fmt.Scanf("%d", &rows)
fmt.Printf("Golang program to create pyramid and pattern\n")
alphabet := 64
i := 1
// using for loop
for i <= rows {
j := 1
for j <= rows-i {
fmt.Printf(" ")
j++
}
k := i
for 0 < k {
fmt.Printf("%c", alphabet+k)
k--
}
l := 2
for l <= i {
fmt.Printf("%c", alphabet+l)
l++
}
fmt.Printf("\n")
i++
}
// print the result
}
输出
Golang program to create pyramid and pattern
A
BAB
CBABC
DCBABCD
EDCBABCDE
FEDCBABCDEF
GFEDCBABCDEFG
代码描述
-
在上面的程序中,我们首先声明了包main。
-
我们导入了包含fmt包文件的fmt包。
-
现在开始 main()函数 这个函数是可执行程序的入口点。它不接受任何参数,也不返回任何内容。
-
声明变量rows并将该变量初始化为您想要的字母金字塔模式的整数值。使用 fmt.Scanln() 来读取和存储rows的值。
-
使用for循环:条件写在if语句内部,并在条件成立时停止执行。
-
最后,使用 fmt.Println() 函数在屏幕上以字母金字塔的形式打印结果。
结论
我们成功编译并执行了上面三个示例中使用for循环创建带有$、数字和字母模式的金字塔的Golang程序代码。