用 C++ 编程求解一组数字的调和平均值
给定一个自然数数组,任务是计算给定数字的调和平均值并打印出来。
什么是调和平均值?
调和平均值表示通过倒数进行算术平均的倒数。
$$调和平均值=\frac{n}{\frac{1}{a}+\frac{1}{b}+\frac{1}{c}+...}$$
其中,n 是给定的元素总数,a、b、c、... 是数组中的实际元素。
计算调和平均值的步骤为 −
记录元素倒数
将所有倒数元素相加
现在,将数组中元素的总数除以倒数元素的总和
输入
arr[] = {2.0, 3.4, 5.3, 2.1}输出
Harmonic mean is: 2.74163
输入
arr[] = {13.5, 14.5, 14.8, 15.2, 16.1}输出
Harmonic mean is : 14.7707
算法
Start
Step 1→ declare function to calculate harmonic mean of numbers
float harmonic_mean(float arr[], int size)
Declare float sum = 0
Loop For int i = 0 and i < size and i++
Set sum = sum + (float)1 / arr[i]
End
return (float)size/sum
Step 2→ In main()
Declare float arr[] = {2.0, 3.4, 5.3, 2.1}
Declare int size = sizeof(arr) / sizeof(arr[0])
Call harmonic_mean(arr, size)
Stop示例
#include <bits/stdc++.h>
using namespace std;
//calculate harmonic mean
float harmonic_mean(float arr[], int size){
float sum = 0;
for (int i = 0; i < size; i++)
sum = sum + (float)1 / arr[i];
return (float)size/sum;
}
int main(){
float arr[] = {2.0, 3.4, 5.3, 2.1};
int size = sizeof(arr) / sizeof(arr[0]);
cout<<"Harmonic mean is : "<<harmonic_mean(arr, size);
return 0;
}输出
如果运行上述代码,它将生成以下输出 −
Harmonic mean is : 2.74163
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP