使用数组计算平均值的 Golang 程序
在本教程中,我们将学习如何编写一个 Go 语言程序来使用数组计算数字的平均值。我们在这个例子中创建了两个程序。在第一种方法中,我们使用用户定义的函数来计算平均值,而在第二种方法中,我们使用内部 Go 函数来查找平均值。
方法 1:使用数组计算数字的平均值
在此方法中,我们将创建一个单独的函数并将数组传递给它。该函数接受数组作为参数,然后在计算平均值后返回整数值。
算法
步骤 1 - 导入 fmt 包。
步骤 2 - 定义一个名为 avgOfArray() 的函数。它接受数组及其长度作为参数,并返回平均值结果作为输出。
步骤 3 - 启动 main() 函数。
步骤 4 - 初始化一个整数数组并将值存储到其中。然后,在屏幕上打印数组。
步骤 5 - 将数组的长度存储在名为 n 的变量中,并通过传递所需的参数来调用 avgOfArray() 函数。
步骤 6 - 在函数中,使用 for 循环遍历数组并通过使用数组的每个元素更新 sum 变量来计算其总和。
步骤 7 - 计算总和后,通过将总和除以数组的长度来找到平均值,并将其存储在名为 avg 的变量中
步骤 8 - 将平均值存储在名为 result 的变量中,并使用 fmt.Println() 函数将其打印在屏幕上。
示例
Golang 程序使用数组计算数字的平均值。以下代码说明了如何使用用户定义的函数找到数组的平均值。
package main import "fmt" // 定义一个函数来查找平均值 func avgOfArray(array [4]int, n int) float64 { var sum int = 0 var i int = 0 for i = 0; i < n; i++ { sum += (array[i]) } var avg float64 = float64(sum) / float64(n) return avg } func main() { arr1 := [4]int{10, 20, 30, 40} fmt.Println("我们希望计算其平均值的给定数组是:", arr1) var n int = len(arr1) // 调用 avgOfArray() 函数 result := avgOfArray(arr1, n) fmt.Println("上述数组的平均值是:", result) }
输出
我们希望计算其平均值的给定数组是:[10 20 30 40] 上述数组的平均值是:25
解释
在此程序中,导入 fmt 包后,我们正在创建一个函数。然后,在调用 main() 函数后,我们将初始化一个整数数组,并为它们赋值,并将该数组传递给函数。然后存储获得的结果并将其打印在屏幕上。
方法 2:使用内部函数查找数组的平均值
在此方法中,我们将使用 Go 语言中的预定义函数来计算数组元素的平均值。我们使用的函数 - make()、append() 和 len()。
算法
步骤 1 - 导入 fmt 包。
步骤 2 - 创建 main() 函数。
步骤 3 - 使用 make() 函数初始化一个容量为 0、长度为 5 的数组。
步骤 4 - 初始化一个整数变量来存储数组变量的总和,并使用 append() 函数将整数值添加到数组中。
步骤 5 - 使用 range() 函数迭代数组并通过向其添加值来更新 sum 变量。
步骤 6 - 现在,要计算数组的平均值,将 sum 变量除以数组的长度,并将结果存储在 avg 变量中。
步骤 7 - 使用fmt.Println() 函数。
语法
func make ([] type, size, capacity)
Go 语言中的 make 函数用于创建数组/映射,它接受要创建的变量的类型、大小和容量作为参数
func len(v Type) int
len() 函数用于获取任何参数的长度。它接受一个参数作为我们希望找到其长度的数据类型变量,并返回整数值,即变量的长度
func append(slice, element_1, element_2…, element_N) []T
append 函数用于向数组切片添加值。它接受多个参数。第一个参数是我们希望添加值的数组,后面是要添加的值。然后,该函数返回包含所有值的数组的最终切片。
示例
Golang 程序使用内部函数查找数组的平均值。
package main import "fmt" func main() { // 创建数组 array := make([]int, 0, 5) array = append(array, 1, 2, 3, 4, 5) var sum int = 0 for _, val := range array { sum = sum + val } fmt.Println("给定的数组是:", array) // 计算数组元素的平均值 avg := sum / len(array) fmt.Println("上述数组的平均值是:", avg) }
输出
给定的数组为:[1 2 3 4 5] 上述数组的平均值是:3
解释
在此程序中,导入 fmt 包并调用 main() 函数后,我们初始化一个整数数组并为它们赋值。然后通过使用 for 循环,我们计算数组中每个元素的总和,并通过将总和除以数组长度来找到平均值。
结论
我们已经成功编译并执行了一个 golang 程序,以使用数组以及示例来获取平均值。在第一个示例中,我们创建了一个外部函数来查找数组的平均值,而在第二个示例中,我们使用 go 中的预定义函数来实现结果。