1 / 11
文档名称:

哈工大材料力学上机实验课作业.docx

格式:docx   大小:84KB   页数:11页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

哈工大材料力学上机实验课作业.docx

上传人:读书之乐 2020/2/16 文件大小:84 KB

下载得到文件列表

哈工大材料力学上机实验课作业.docx

相关文档

文档介绍

文档介绍:HarbinInstituteofTechnology材料力学电算大作业题目名称:各种条件下的任意截面的弯矩,挠度作者班号:1108108作者学号:作者姓名:刘涛指导教师:王春香完成时间:/5/23问题的提出该程序能够解决的问题:一个力作用下(1)圆柱面杆(2)矩形截面杆(3)工字梁截面杆(4)空心圆柱截面杆的弯矩和挠度程序流程图输入杆长(mm),力F(kN),力作用点到左端面A的距离a(mm)输入梁的弹性模量(Gpa)输入所求端面到左端面的距离X输入梁的形状计算惯性矩计算并输出弯矩根据梁的形状不同输入不同的数值计算并输出挠度三、不同力作用下的弯矩,挠度,挠度程序:#include<>#include<>#include<>#definePIintget_I(intkind);intmain(){floatf=100,l=100,a=50,b,x=60;floatM,v;floatE=200,I;intkind=1;printf("请输入杆长l(mm),力F(kN),力作用点到左端面A的距离a(mm)\n");scanf("%f%f%f",&l,&f,&a);l/=1000;f*=1000;a/=1000;printf("请输入梁的弹性模量(GPa)\n");scanf("%f",&E);E*=;printf("请输入所求端面到左端面A的距离X\n");scanf("%f",&x);x/=1000;printf("请输入梁的截面形状(圆柱面=1,矩形梁=2,工字梁=3,空心圆柱梁=4)\n");scanf("%d",&kind);I=get_I(kind);//计算惯性矩b=l-a;M=f*x;//计算弯矩if(0<=x&&x<=a){v=(-1)*f*b*x*(l*l-x*x-b*b)/(6*E*I*l);}elseif(a<x&&x<=l){v=(-1)*f*b*x*(l/b*pow((x-a),3)+(l*l-b*b)*x-pow(x,3))/(6*E*I*l);}else{v=0;printf("error!");exit(0);}printf("转矩M=%gN•m\n",M);printf("挠度V=%gm\n",v);system("pause");return0;}intget_I(intkind)//计算截面的I惯性矩{floatd,b,h;//矩形梁,工字梁,圆柱梁floatd2,alpha;//空心圆柱梁floatI;//圆柱面=1,矩形梁=2,工字梁=3,空心圆柱梁=4if(1==kind)//圆柱面=1{printf("请输入圆柱梁的直径d\n");scanf("%f",&d);I=PI*pow(d,4)/64;}elseif(2==kind)//矩形梁=2{printf("请输入矩形截面的b和h\n");scanf("%f%f",&b,&h);I=b*pow(h,3)/12;}///*elseif(3==kind)//工字梁=3{printf("|——————-—————|\n");printf("|————||——————|t\n");printf("|d|\n");printf("||\n");printf("|————||——————|\n");printf("|—————b——————|\n");/*printf("请输入工字梁的翼缘厚度t,腹板厚度d,翼缘宽度b,梁高度h\n");scanf("%f%f%f%f",&t,&d,&b,&h);*/printf("请查附表B输入工字梁的惯性矩I\n");scanf("%f",&I);}//*/elseif(4==kind)//空心圆柱梁=4{printf("请输入圆柱梁的直径d和内外径比例alpha\n");scanf("%f%f",&d2,&alpha);I=PI*pow(d2,4)*(1-pow(alpha,4))/64;}else{I=0;}returnI;},挠度#include<>#include<>#include<>#definePI#ORAD(PI/180)floatget_I(intkind);floatget_V_M0(floatE,floatLength,floatI,floatx,floatM0,floata_L);floatget_M_M0(floatLength,floatM0,floata_L,floatx);intmain(){intkind;//截面形状floatLength,a_L,x;floatE,I,M0;floatv,M;//所求截面的挠度,弯矩printf("InputLength(mm):");scanf("%f",&Length);Length/=1000;/*单位转化*/printf("Input