⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 experiment.cpp

📁 计算测量标准差与两个不确定度
💻 CPP
字号:
# include <iostream.h>
# include <math.h>
double detal_d()
{
	double d1, d2;
	cout<<"请输入实验数据:\n";
	cin>>d1;
	cin>>d2;
	return fabs(d2-d1);
}
double equal(double * p, int n)
{
	double s=0;
	for(int i=0;i<n;i++)
		s+=p[i];
	double equal;
	equal=s/n;
	return equal;
}
double Sd(double * p, int n, double equal)
{
	double Sd=0;
	double c;
	for(int i=0;i<n;i++)
	{
		c=(p[i]-equal)*(p[i]-equal);
		Sd+=c;
	}
	Sd=Sd/(n-1);
	Sd=sqrt(Sd);
	return Sd;
}
double choose_t(int i)
{
	double t;
	switch (i)
	{
	case 2: t=9.0;
		break;
	case 3: t=2.5;
		break;
	case 4: t=1.6;
		break;
	case 5: t=1.2;
		break;
	case 6: t=1.05;
		break;
	case 7: t=0.93;
		break;
	case 8: t=0.84;
	    break;
	case 9: t=0.77;
		break;
	case 10: t=0.72;
		break;
	case 15: t=0.55;
		break;
	case 20: t=0.47;
		break;
	case 30: t=0.37;
		break;
	default: t=0;
		break;
	}
	return t;
}
double UA(double Sd, double t)
{
	double UA;
	UA=Sd*t;
	return UA;
}
double UB()
{
	double UB=0.00010;
	return UB;
}
double U(double UA ,double UB)
{
	double U;
	U=UA*UA+UB*UB;
	U=sqrt(U);
	return U;
}
void display_p(double * p,int n)
{
	for(int i=0;i<n;i++)
		cout<<p[i]<<endl;
}
void main()
{
int n;
double t,a,b,e,s;
cout<<"请输入需要记录的实验数据组数:"<<endl;
cin>>n;
double * d=new double[n];
for(int i=0;i<n;i++)
d[i]=detal_d();
display_p(d,n);
e=equal(d,n);
s=Sd(d,n,e);
t=choose_t(n);
a=UA(s,t);
b=UB();
cout<<"t "<<t<<endl;
cout<<"equal "<<e<<endl;
cout<<"标准差"<<s<<endl;
cout<<"不确定度UA  "<<a<<endl;
cout<<"不确定度UB  "<<b<<endl;
cout<<"不确定度U   "<<U(a,b)<<endl;
delete [] d;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -