本文主要是介绍重庆邮电大学 大学物理实验 杨氏模量计算 c++实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
网上居然找不到有人做。自己写了一个。我不保证写的是对的,因为我实验报告还没交。
以下是源代码,写得很烂:
#include <iostream>
#include <cmath>
using namespace std;
#define Pi 3.14
double a[10],b[10],c[10],d[5];
double E;
double L,H,D;
double d_si0,d_si=0,d_ping;double uncertainty(int len,double A[]){double sum=0;for(int i=0;i<len;i++){sum+=A[i];}sum/=len;double Sn=0;for(int i=0;i<len;i++){Sn+=((A[i]-sum)*(A[i]-sum));}return sqrt(Sn/(len*(len-1)));
}int main(){cout<<"请依次输入L、H、D(单位mm),以空格间隔:"<<endl;cin>>L>>H>>D;cout<<"请输入d0(单位mm):";cin>>d_si0;double d_s[6];cout<<"请输入测量的六组金属丝直径视值d(单位mm),以空格间隔:"<<endl;for(int i=0;i<6;i++){float temp;cin>>temp;d_s[i]=temp;d_si+=(temp-d_si0);}d_ping=d_si/6;cout<<"接下来,请成对输入相同力下的x值。单位mm,以空格间隔。"<<endl;for(int i=0;i<10;i++){cout<<"请输入第"<<i+1<<"组数据:";if (scanf("%lf%lf", &a[i], &b[i]) != 2) {cout << "Error: invalid input" << endl;return 1;}c[i]=(a[i]+b[i])/2;}for(int i=0;i<5;i++){d[i]=c[i+5]-c[i];}double E0[5];for(int i=0;i<5;i++){E=((8*5*9.8*(L*0.001)*(H*0.001))/(Pi*(d_ping*0.001)*(d_ping*0.001)*(D*0.001)))/(d[i]*0.001);E0[i]=E;cout<<"E"<<i+1<<"="<<E<<endl;}cout<<"d的不确定度:"<<uncertainty(6,d_s)<<endl;cout<<"Δx的不确定度为:"<<uncertainty(5,d)<<endl;cout<<"杨氏模量的不确定度为:"<<uncertainty(5,E0)<<endl;getchar();getchar();return 0;
}
如图:
怎么用就不需要我说了吧。
这篇关于重庆邮电大学 大学物理实验 杨氏模量计算 c++实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!