哈工大材料力学上机大作业Word下载.docx
- 文档编号:7284468
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:17
- 大小:59.53KB
哈工大材料力学上机大作业Word下载.docx
《哈工大材料力学上机大作业Word下载.docx》由会员分享,可在线阅读,更多相关《哈工大材料力学上机大作业Word下载.docx(17页珍藏版)》请在冰点文库上搜索。
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;
请输入梁的弹性模量(GPa)\n"
%f"
E);
E*=1.e9;
请输入所求端面到左端面A的距离X\n"
x);
x/=1000;
请输入梁的截面形状(圆柱面=1,矩形梁=2,工字梁=3,空心圆柱梁=4)\n"
%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&
=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;
error!
"
exit(0);
转矩M=%gN•m\n"
M);
挠度V=%gm\n"
v);
system("
pause"
return0;
}
intget_I(intkind)//计算截面的I惯性矩
floatd,b,h;
//矩形梁,工字梁,圆柱梁
floatd2,alpha;
//空心圆柱梁
floatI;
//圆柱面=1,矩形梁=2,工字梁=3,空心圆柱梁=4
if(1==kind)//圆柱面=1
printf("
请输入圆柱梁的直径d\n"
&
d);
I=PI*pow(d,4)/64;
elseif(2==kind)//矩形梁=2
请输入矩形截面的b和h\n"
scanf("
%f%f"
b,&
h);
I=b*pow(h,3)/12;
///*
elseif(3==kind)//工字梁=3
|——————-—————|\n"
|————||——————|t\n"
|d|\n"
||\n"
|————||——————|\n"
|—————b——————|\n"
/*
请输入工字梁的翼缘厚度t,腹板厚度d,翼缘宽度b,梁高度h\n"
%f%f%f%f"
t,&
d,&
b,&
*/
请查附表B输入工字梁的惯性矩I\n"
I);
//*/
elseif(4==kind)//空心圆柱梁=4
请输入圆柱梁的直径d和内外径比例alpha\n"
d2,&
alpha);
I=PI*pow(d2,4)*(1-pow(alpha,4))/64;
I=0;
returnI;
2.一个力偶作用下的任意截面的弯矩,挠度
#defineTORAD(PI/180)
floatget_I(intkind);
floatget_V_M0(floatE,floatLength,
floatI,
floatx,floatM0,floata_L);
floatget_M_M0(floatLength,floatM0,
floata_L,floatx);
intkind;
//截面形状
floatLength,a_L,x;
floatE,I,M0;
floatv,M;
//所求截面的挠度,弯矩
InputLength(mm):
"
Length);
Length/=1000;
/*单位转化*/
Inputshape(circle=1,scquare=2,gongZL=3,blankcircle=4):
InputE(GPa):
InputM0(N*m):
M0);
Inputa_L(mm)"
a_L);
a_L/=1000;
while(a_L<
0||a_L>
Length)
力偶没有作用在杆上,请重新输入作用点位置:
\n"
请输入力偶作用点距离左端面的距离a_L(mm)"
Inputx(mm):
I=get_I(kind);
v=get_V_M0(E,Length,I,x,M0,a_L);
M=get_M_M0(Length,M0,a_L,x);
ToatalM=%gN•m\n"
Toatalv=%gmm\n"
floatget_I(intkind)//计算截面的I惯性矩
//floatt;
Inputd\n"
Inputb和h\n"
InputI\n"
Inputdandalpha\n"
floatget_V_M0(floatE,floatLength,floatI,floatx,floatM0,floata_L)
floatv;
floatm,b;
b=Length-a_L;
m=M0;
if(E<
1.e7)
if(x>
=0&
=a_L)
v=m*x*(3*Length*Length-3*b*b-x*x)/(6*E*I*Length);
elseif(x>
a_L&
=Length)
v=m*(-pow(x,3)+3*Length*pow(x-a_L,2)+(pow(Length,2)-
3*b*b)*x)/(6*E*I*Length);
ERROR!
!
\n"
v=0;
exit(0);
returnv;
floatget_M_M0(floatLength,floatM0,floata_L,floatx)
floatF_L,F_R;
//左右两处的支反力
floatM;
//所求任意截面的弯矩
F_L=-M0/Length;
F_R=-F_L;
M=F_L*x;
M=F_R*(x-a_L);
M=0;
returnM;
3.一段分布力作用下的任意截面的弯矩,挠度
#include<
#definePI3.1415926
//计算截面的I惯性矩
floatget_M_q(floatE,floatI,floatLength,floatx,floatq,floata_q_L,floata_q_R);
floatget_V_q(floatE,floatI,floatLength,floatx,floatq,floata_q_L,floata_q_R);
floatLength,a_q_L,a_q_R,q;
floatE,I;
floatM,V,x;
请输入梁的长度Length(单位:
mm)"
Length*=1.e-3;
请输入分布力最左端距离梁左端距离a_q_L(单位:
a_q_L);
a_q_L*=1.e-3;
请输入分布力最左端距离梁右端距离a_q_R(单位:
a_q_R);
a_q_R*=1.e-3;
请输入分布力q:
(单位:
kN)"
q);
q*=1.e3;
请输入梁的弹性模量E(单位:
GPa)"
请输入截面形状(圆柱面=1,矩形梁=2,工字梁=3,空心圆柱梁=4):
请输所求截面距离左端面距离x(单位:
x*=1.e-3;
M=get_M_q(E,I,Length,x,q,a_q_L,a_q_R);
V=get_V_q(E,I,Length,x,q,a_q_L,a_q_R);
所求截面的弯矩是:
%gN•m\n"
M);
所求截面的挠度是:
%gm\n"
V);
system("
请输入圆柱梁的直径d(单位:
d*=1.e-3;
请输入矩形截面的b和h(单位:
b*=1.e-3;
h*=1.e-3;
请查附表B输入工字梁的惯性矩I"
请输入圆柱梁的直径d和内外径比例alpha"
d2*=1.e-3;
floatget_M_q(floatE,floatI,floatLength,floatx,
floatq,floata_q_L,floata_q_R)
floatc_q,fa,fb;
c_q=Length-a_q_L-a_q_R;
fa=(a_q_R+c_q/2)*c_q*q/Length;
fb=(a_q_L+c_q/2)*c_q*q/Length;
if((x>
=0)&
(x<
=a_q_L))
M=fa*x/(E*I);
elseif((x>
a_q_L)&
=(Length-a_q_R)))
M=(fa*x-(x-a_q_L)*(x-a_q_L)*q/2)/(E*I);
(Length-a_q_R))&
=Length))
M=(fb*(Length-x))/(E*I);
printf("
exit(0);
floatget_V_q(floatE,floatI,floatLength,floatx,floatq,floata_q_L,floata_q_R)
floatV;
V=fa*pow(x,3)/(6*E*I);
V=(fa*pow(x,3)/6-pow((x-a_q_L),4)*q/24)/(E*I);
V=(fb*Length*pow(x,2)/2-fb*pow(x,3)/6-fb*pow(Length,2)*x/3)/(E*I);
V=0;
returnV;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 哈工大 材料力学 上机 作业