介绍
在本实验中,我们将学习如何编写一个 C++ 程序,使用函数计算一组数字的标准差。该程序将演示如何计算一组数字的方差(即与均值的平方差的平均值),然后取其平方根得到标准差。
在本实验中,我们将学习如何编写一个 C++ 程序,使用函数计算一组数字的标准差。该程序将演示如何计算一组数字的方差(即与均值的平方差的平均值),然后取其平方根得到标准差。
我们将从定义一个函数开始,该函数接收一个浮点值数组并返回这些值的标准差。
float SD(float values[]) // function for calculating standard deviation
{
float sum = 0.0, mean, sd = 0.0;
int i;
for(i = 0; i < 10; ++i)
{
sum = sum + values[i]; // calculating sum
}
mean = sum/10; // finding mean.
for(i = 0; i < 10; ++i)
sd = sd + pow(values[i] - mean, 2); // calculating standard deviation
return sqrt(sd / 10);
}
在这个函数中,我们首先计算所有值的总和。然后,我们将总和除以值的总数以得到均值。接着,我们通过累加每个值与均值的平方差来计算方差。最后,我们通过取方差的平方根来计算标准差。
接下来,我们编写 main
函数,该函数从用户读取输入,将值存储在数组中,调用 SD
函数以获取标准差,然后显示结果。
int main()
{
int i;
float arr[10];
cout << "Enter 10 elements: ";
for(i = 0; i < 10; ++i)
cin >> arr[i];
cout << endl << "Standard Deviation = " << SD(arr); // calling function
return 0;
}
在这个函数中,我们首先声明一个数组 arr
来存储用户的输入。然后提示用户逐个输入 10 个值。接着,我们调用 SD
函数并传入 arr
数组以获取标准差,并将其打印到控制台。
现在,我们可以在终端中使用以下命令编译并运行程序:
g++ ~/project/main.cpp -o main && ./main
该命令将编译 ~/project
目录中的 main.cpp
文件,然后运行生成的可执行文件。
让我们输入 4 5 7 8 9 6 3 2 1 7
作为输入,并检查是否得到了正确的输出。
Enter 10 elements: 4 5 7 8 9 6 3 2 1 7
Standard Deviation = 2.5219
我们可以看到标准差为 2.5219
,这与我们手动计算时得到的结果一致。
以下是 main.cpp
文件的完整代码供参考:
#include <iostream>
#include <cmath>
using namespace std;
float SD(float values[]) // function for calculating standadr deviation
{
float sum = 0.0, mean, sd = 0.0;
int i;
for(i = 0; i < 10; ++i)
{
sum = sum + values[i]; // calculating sum
}
mean = sum/10; // finding mean.
for(i = 0; i < 10; ++i)
sd = sd + pow(values[i] - mean, 2); // calculating standard deviation
return sqrt(sd / 10);
}
int main()
{
int i;
float arr[10];
cout << "Enter 10 elements: ";
for(i = 0; i < 10; ++i)
cin >> arr[i];
cout << endl << "Standard Deviation = " << SD(arr); // calling function
return 0;
}
在本实验中,我们学习了如何使用 C++ 程序中的函数计算一组数字的标准差。我们使用一个函数来计算方差(即与均值的平方差的平均值),然后取其平方根得到标准差。我们还学习了如何从用户读取输入,将其存储在数组中,然后调用函数以获取标准差。最后,我们编译并运行程序,验证了输出结果的正确性。