机械原理程序设计
机械原理程序设计机械原理课程设计程序(凸轮设计部分)
#i nclude<stdio.h>
#i nclude<stdio.h>
#i nclude<math.h>
#define PI 3.1415926
void ydgl();
float d,am,ro,e,h,p,dt0,d0,s,ds,r,al;
int f;
main()
{ printf("Determaination the prime circle of cam\n");
printf("----------------------------\n");
printf( "input ro=");scanf("%f",&ro);
printf("input h=");scanf("%f",&h);
printf("input e=");scanf("%f",&e);
printf("input dt0=");scanf("%f",&dt0);
am=0;p=PI/180;
printf("The initial data:ro=%f\n",ro);
printf("h=%f e=%f dt0=%f\n",h,e,dt0);
do
{ro=ro+5;
for(f=0;f<=dt0;f=f+2)
{d=PI*f/dt0;
ydgl();
}
}
while(am>30*p);
printf("The intermediate results: am=%f\n",am/p);
printf("ro=%f\n",ro);
do
{ro=ro-1;
if(ro<e)
break;
for(f=0;f<=dt0;f=f+2)
{d=PI*f/dt0;
ydgl();
}
}
while((am>30*p)||(am<=29.5*p));
printf("The final results:max alfa=%f\n",am/p);
printf(" min ro=%f\n",ro);
getch();
}
void ydgl()
{d0=dt0*p;
s=0.5*h*(1-cos(d));
ds=0.5*h*PI*sin(d)/d0;
r=sqrt(ro*ro-e*e);
if((s+r)==0)
return;
al=atan((ds-e)/(s+r));
if(al>am)
am=al;
} 支持一下! 谢谢楼主 祝我的机械网越办越好 我的机械网越来越好,感谢分享,学习了。
页:
[1]