问题描述
解题思路
根据题目内容,先对数组进行求和,然后根据公式再计算平均值,方差,标准差,然后根据公式计算f(n)进行输出即可,注意浮点数的输出
代码实现
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
int a[1010];
double sum = 0;
for (int i = 0; i < n; i ++)
{
cin >> a[i];
sum += a[i];
}
double avg = sum / n; //计算平均值
double t = 0;
for (int i = 0; i < n; i ++)
{
t += (a[i] - avg) * (a[i] - avg);
}
t /= n; //计算方差
t = sqrt(t); //计算标准差
for (int i = 0; i < n; i ++)
{
printf("%f\n", (a[i] - avg) / t); //输出f(n)
}
return 0;
}