我需要一个做不确定度的程序!

来源:百度知道 编辑:UC知道 时间:2024/05/30 23:24:07
物理实验的不确定度,用C语言做,只要写出程序就好了,要可以运行啊~
不一定要是C语言的,但是要能在Turbo2.0上运行

C++行啊,我只写过C++版的,懒得再改成C的了,有兴趣自己搞吧:
#include<iostream>
#include<cmath>
#include<vector>
using namespace std;
//求算术平均值
double average(const vector<double> &x)
{
int n=x.size();
double avg=0;
for (int i=0;i<n;++i)
avg+=x[i];
return avg/n;
}
//求标准偏差(贝塞尔公式)
double stdev(const vector<double> &x)
{
int n=x.size();
double avg=average(x),s=0;
for (int i=0;i<n;++i){
s+=(x[i]-avg)*(x[i]-avg);
}
s=sqrt(s/(n-1));
return s;
}
//求A类不确定度
double A_uncertain(const vector<double> &x)
{
return stdev(x)/sqrt(double(x.size()));
}
//求B类不确定度,默认按 1/根号3 算
double B_uncertain(const double &x)
{
return x/sqrt(3.0);
}
//求合成不确定度
double C_uncertain(const double &ua,const double &ub)
{
return sqrt(ua*ua+ub*ub);
}
void main()
{
int n;
double av