L1-068 调和平均 (10 分)
N 个正数的算数平均是这些数的和除以 N,它们的调和平均是它们倒数的算数平均的倒数。本题就请你计算给定的一系列正数的调和平均值。
输入格式:
每个输入包含 1 个测试用例。每个测试用例第 1 行给出正整数 N (≤1000);第 2 行给出 N 个正数,都在区间 [0.1,100] 内。
输出格式:
在一行中输出给定数列的调和平均值,输出小数点后2位。
输入样例:
8
10 15 12.7 0.3 4 13 1 15.6
输出样例:
1.61
C语言代码
#include<stdio.h>
int main()
{
int i,n,j;
float a[1001],sum=0;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%f",&a[i]);
}
for(i=0;i<n;i++)
{
sum = sum+1/a[i];
}
printf("%.2f",1/(sum/n));
}
Java代码
import java.util.*;
public class demo {
public static void main(String[] args)
{
int n;
double a[],sum=0;
Scanner reader = new Scanner(System.in);
n = reader.nextInt();
a = new double[n];
for(int i=0;i<a.length;i++)
{
a[i]=reader.nextDouble();
sum = sum + 1/a[i];
}
System.out.printf("%.2f",1/(sum/a.length));
}
}