编译调用函数SDM,反馈四个形参的标准差,其中嵌套调用函数MEANM,反馈四个形参的平均数
#include <iostream>
#include <cmath>
void MEANM(double a, double b, double c, double d, double& mean_a, double& mean_b, double& mean_c, double& mean_d) {
mean_a = (a + b + c + d) / 4.0;
mean_b = (a + b + c + d) / 4.0;
mean_c = (a + b + c + d) / 4.0;
mean_d = (a + b + c + d) / 4.0;
}
void SDM(double a, double b, double c, double d, double& sd_a, double& sd_b, double& sd_c, double& sd_d) {
double mean_a, mean_b, mean_c, mean_d;
MEANM(a, b, c, d, mean_a, mean_b, mean_c, mean_d);
sd_a = sqrt((pow(a - mean_a, 2) + pow(b - mean_b, 2) + pow(c - mean_c, 2) + pow(d - mean_d, 2)) / 4.0);
sd_b = sqrt((pow(a - mean_a, 2) + pow(b - mean_b, 2) + pow(c - mean_c, 2) + pow(d - mean_d, 2)) / 4.0);
sd_c = sqrt((pow(a - mean_a, 2) + pow(b - mean_b, 2) + pow(c - mean_c, 2) + pow(d - mean_d, 2)) / 4.0);
sd_d = sqrt((pow(a - mean_a, 2) + pow(b - mean_b, 2) + pow(c - mean_c, 2) + pow(d - mean_d, 2)) / 4.0);
}
int main() {
double a = 1.0, b = 2.0, c = 3.0, d = 4.0;
double sd_a, sd_b, sd_c, sd_d;
SDM(a, b, c, d, sd_a, sd_b, sd_c, sd_d);
std::cout << "Standard Deviations: " << sd_a << ", " << sd_b << ", " << sd_c << ", " << sd_d << std::endl;
return 0;
}
MEANM 函数接受四个数据点和四个引用参数,将这些参数的平均值存储到对应的引用参数中。SDM 函数在调用 MEANM 函数以计算平均值之后,接受四个数据点和四个引用参数,计算标准差并将结果存储到对应的引用参数中。主函数使用这两个函数来计算四个数据点的标准差
不知道你这个问题是否已经解决, 如果还没有解决的话: