哈工大材料力学上机作业模版(11)
2021-08-26
来源:爱够旅游网
Harbin Institute of Technology
材料力学上机作业
班号: 1308107 学号: 1130810720 姓名: 陈 俊 指导教师: 张桂莲 完成时间: 2015年6月17日
一、题目:
n个力,h个力偶,m段分布力共同作用下的最大弯矩,最大挠度。
二、程序:(包括运行结果截图)
#include #include #include #define N 100 #define NN 100main() {
double I=2.45e-6,E=2e11; int i,j,n1,n2,n3; float a,b,c,l,q,F,Mi; float x,m[NN]={0},v[NN]={0},Mmax=0,Vmax=0,F1,F2,c1,c2,c3,d3; double M[N][NN]={0},V[N][NN]={0}; printf(\"输入梁的长度l/m:\"); scanf(\"%f\ printf(\"输入集中力的个数n:\"); scanf(\"%d\ for(i=0;iprintf(\"输入力的作用位置a%d/mm:\ scanf(\"%lf\ printf(\"输入力的大小F%d/N:\ scanf(\"%lf\ for(j=1;j<=NN;j++) { x=j*l/NN; b=l-a; F1=(F*b)/l; F2=(F*a)/l; if(0<=x&&x<=a) { M[i][j]=F1*x; V[i][j]=-F*b*x*(l*l-x*x-b*b)/(6*E*I*l);} else if(aprintf(\"输入力偶的作用位置a%d/mm:\ scanf(\"%lf\ printf(\"输入力偶的大小M%d/Nm:\ scanf(\"%lf\ for(j=1;j<=NN;j++) { x=j*l/NN; b=l-a; F1=-Mi/l; F2=Mi/l; if(0<=x&&x<=a) { M[i][j]=F1*x; V[i][j]=Mi*x*(l*l-3*b*b-x*x)/(6*E*I*l); } else if(a{ printf(\"输入有误!\\n\"); exit(0); } } } printf(\"输入分布力的个数n:\"); scanf(\"%d\ for(i=n1+n2;iprintf(\"输入分布力与左端的距离a%d/mm:\ scanf(\"%lf\ printf(\"输入分布力与右端的距离c%d/mm:\ scanf(\"%lf\ printf(\"输入分布力的大小q%d/N/m:\ scanf(\"%lf\ for(j=1;j<=NN;j++) { x=j*l/NN; b=l-a-c; F1=(q*c*(c+2*b))/(2*l); F2=(q*c*(c+2*a))/(2*l); c3=(F1*pow((a+c),3))/(3*l)-(q*a*pow(c,3))/(6*l)-(q*pow(c,4))/(8*l)+(F2*pow(b,2))/2-(F2* pow(b,3))/(3*l); c2=c3-(F2*pow(b,2))/2-(F1*pow((a+c),2))/2+(q*pow(c,3))/6; c1=c2; d3=-c3*l; if((x>=0)&&(x<=a)) { V[i][j]=((F1*pow(x,3))/6+c1*x)/(E*I); M[i][j]=F1*x; } if((x>a)&&(x<=(a+c))) { V[i][j]=((F1*pow(x,3))/6-(q*pow((x-a),4))/24+c2*x)/(E*I); M[i][j]=((q*c*x*(c+2*b))/(2*l))-((q*pow((x-a),2))/2); }if((x>(a+c))&&(x<=l)) { V[i][j]=((F2*pow((l-x),3))/6+c3*x+d3)/(E*I); M[i][j]=F2*(l-x); } } } for(j=1;j<=NN;j++) { for(i=0;iMmax) Mmax=m[j]; if(v[j]>Vmax) Vmax=v[j]; } printf(\"最大弯矩为:M=%.2f\\n最大挠度为:v=%f\\n\}程序运行图:
三、收获、感想:
通过材力上机实验,我更加充分的了解了计算机编程在材料力学计算中的应用。对于课堂上,书本上的有了更加直观的认识,也提高了使用C语言,运用codeblocks的编程的技能。