21xrx.com
2024-11-05 18:29:20 Tuesday
登录
文章检索 我的文章 写文章
C++实现几何平均值
2023-07-04 14:47:30 深夜i     --     --
C++ geometric mean implementation algorithms mathematical functions

几何平均值(geometric mean)是一种计算平均数的方式,它是一组数的乘积的 n 次根,其中 n 为这组数的数量。在 C++ 中,可以通过以下方式实现几何平均值的计算:


#include <iostream>

#include <cmath>

using namespace std;

double geometricMean(double arr[], int size) {

  double product = 1;

  for(int i = 0; i < size; i++) {

    product *= arr[i];

  }

  double result = pow(product, 1 / (double)size);

  return result;

}

int main() {

  double arr[] = 9.2;

  int size = sizeof(arr) / sizeof(arr[0]);

  double result = geometricMean(arr, size);

  cout << "The geometric mean value is: " << result << endl;

  return 0;

}

在上述代码中,首先定义了一个函数 geometricMean,该函数接收一个数组和数组的大小作为参数。在函数内部,使用一个循环计算出数组的乘积,然后使用 pow 函数计算出 n 次根,最终返回几何平均值。

在 main 函数中,定义了一个包含五个数字的数组,并计算出数组的大小。然后调用 geometricMean 函数,将数组和大小作为参数传入,并将返回值赋值给 result 变量。最后在控制台输出结果。

通过以上示例,我们可以看出,在 C++ 中实现几何平均值的计算非常简单。需要注意的是,在计算 n 次根时,应该将 1.0 除以 size,这样可以避免整数相除得到小数的截断问题。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复