使用数组计算平均值的 Go 语言程序


在本教程中,我们将学习如何编写一个 Go 语言程序,使用数组计算数字的平均值。我们将在这个示例中创建两个程序。在第一种方法中,我们使用用户自定义函数来计算平均值,而在第二种方法中,我们使用 Go 的内置函数来查找平均值。

方法一:使用数组计算数字的平均值

在这种方法中,我们将创建一个单独的函数并将数组传递给它。该函数接受数组作为参数,然后计算平均值并返回整数结果。

算法

步骤 1 − 导入 fmt 包。

步骤 2 − 定义名为 avgOfArray() 的函数。它接受数组及其长度作为参数,并返回平均值的计算结果。

步骤 3 − 启动 main() 函数。

步骤 4 − 初始化一个整数数组并向其中存储值。然后,在屏幕上打印数组。

步骤 5 − 将数组的长度存储在一个名为 n 的变量中,并通过传递所需参数来调用 avgOfArray() 函数。

步骤 6 − 在函数中,使用for循环迭代数组,并通过使用每个数组元素更新 sum 变量来计算其总和。

步骤 7 − 计算出总和后,通过将总和除以数组的长度来查找平均值,并将结果存储在一个名为 avg 的变量中。

步骤 8 − 将平均值存储在一个名为 result 的变量中,并使用 fmt.Println() 函数在屏幕上打印它。

示例

使用数组计算数字平均值的 Go 语言程序。以下代码说明了如何使用用户自定义函数查找数组的平均值。

Open Compiler
package main import "fmt" // defining a function to find average 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("The given array whose average we wish to calculate is:", arr1) var n int = len(arr1) // calling avgOfArray() function result := avgOfArray(arr1, n) fmt.Println("The average of the above mentioned array is:", result) }

输出

The given array whose average we wish to calculate is: [10 20 30 40]
The average of the above mentioned array is: 25

解释

在这个程序中,在导入 fmt 包并创建函数之后,我们调用 main() 函数,初始化一个整数数组并为其赋值,并将数组传递给函数。然后存储获得的结果并在屏幕上打印它。

方法二:使用内置函数查找数组的平均值

在这种方法中,我们将使用 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 函数用于向数组切片添加值。它接受多个参数。第一个参数是要向其添加值的数组,后跟要添加的值。然后,该函数返回包含所有值的最终数组切片。

示例

使用内置函数查找数组平均值的 Go 语言程序。

Open Compiler
package main import "fmt" func main() { // Create the array 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("The given array is:", array) // Calculate the average of array elements avg := sum / len(array) fmt.Println("Average of above array is:", avg) }

输出

The given array is: [1 2 3 4 5]
Average of above array is: 3

解释

在这个程序中,在导入 fmt 包并调用 main() 函数之后,我们初始化一个整数数组并为其赋值。然后,通过使用 for 循环,我们计算数组中每个元素的总和,并通过将总和除以数组的长度来查找平均值。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

结论

我们已经成功编译并执行了一个 Go 语言程序,使用数组获得平均值以及示例。在第一个示例中,我们创建了一个外部函数来查找数组的平均值,而在第二个示例中,我们使用 Go 中的预定义函数来获得结果。

更新于:2023年1月6日

浏览量 1K+

启动您的职业生涯

通过完成课程获得认证

开始学习
广告