附合导线计算程序设计.doc

上传人:xin****828 文档编号:6679084 上传时间:2020-03-02 格式:DOC 页数:5 大小:21.50KB
返回 下载 相关 举报
附合导线计算程序设计.doc_第1页
第1页 / 共5页
附合导线计算程序设计.doc_第2页
第2页 / 共5页
附合导线计算程序设计.doc_第3页
第3页 / 共5页
点击查看更多>>
资源描述
5 附合导线计算程序设计#include#define PI 3.1415926#include#define LEN sizeof(struct node)#includestruct zuobiaodouble x;double y;struct angleint degree;int minute;float second;struct nodedouble x;double y;struct angle ang1;struct angle fwj;double s;double dx;double dy;struct node *next;double jtod(struct angle jiao)double degree;degree=jiao.degree;degree+=(jiao.minute/60.0);degree+=(jiao.second/3600.0);return degree;struct angle dtoj(double jiaodu)struct angle fwj;fwj.degree=floor(jiaodu); fwj.minute =floor(jiaodu-floor(jiaodu)*60); fwj.second =(jiaodu-floor(jiaodu)*60-fwj.minute)*60;return fwj;double jtoh(struct angle jiaodu)double hu;hu=jtod(jiaodu);hu=hu*PI/180;return hu;main()FILE *fp;struct zuobiao zb0,zbN;struct node *head,*p1,*p2;struct angle angle1,f0,fB,fN;int n,i;double t,fBsecond,jiaodu;double fX=0,fY=0,K=0,S=0;fB.degree=0;fB.minute=0;fB.second=0;if(fp=fopen(d:prodata2.txt,r)=NULL)printf(cannot open this filen); fscanf(fp,%d,&n);fscanf(fp,%lf%lf,&zb0.x,&zb0.y);fscanf(fp,%d%d%f,&f0.degree,&f0.minute,&f0.second);fscanf(fp,%lf%lf,&zbN.x,&zbN.y);fscanf(fp,%d%d%f,&fN.degree,&fN.minute,&fN.second);fB.degree=f0.degree;fB.minute=f0.minute;fB.second=f0.second;fBsecond=jtod(fB);for(i=0;i360) fBsecond-=360;if(fBsecond0) fBsecond+=360;fBsecond-=jtod(fN);fBsecond*=3600;printf(%lfn,fBsecond);fBsecond/=-n;rewind(fp); for(i=0;ifwj.degree ,&p1-fwj.minute ,&p1-fwj.second );for(i=0;iang1.degree ,&p1-ang1.minute ,&p1-ang1.second );p1-ang1.second +=fBsecond;if(p1-ang1.second =60) p1-ang1.second -=60;p1-ang1.minute +=1;if(p1-ang1.minute =60)p1-ang1.minute -=60; p1-ang1.degree +=1; if(p1-ang1.second ang1.second +=60;p1-ang1.minute -=1;if(p1-ang1.minute ang1.minute +=60; p1-ang1.degree -=1; p2-next =p1;p2=p1;p1=(struct node *)malloc(LEN);p2-next=NULL;p1=head;i=0;dofscanf(fp,%lf,&p1-s);printf(s%d=%.3lf mn,i+1,p1-s);S+=p1-s;i+;p1=p1-next ;while(p1-next!=NULL);p1-s=0;printf(S=%8.3lf mn,S);p1=head;/p1-dx=p1-s*cos(jtoh(p1-fwj );/p1-dy=p1-s*sin(jtoh(p1-fwj );/p1=p1-next;jiaodu=jtod(f0);dojiaodu+=jtod(p1-ang1);jiaodu-=180;if(jiaodu360) jiaodu-=360;if(jiaodufwj =dtoj(jiaodu); p1-dx=p1-s*cos(jtoh(p1-fwj); p1-dy=p1-s*sin(jtoh(p1-fwj); p1=p1-next ; while(p1-next !=NULL); p1=head; fX=zb0.x; fY=zb0.y; do fX+=p1-dx; fY+=p1-dy; p1=p1-next ; while(p1-next !=NULL); fX-=zbN.x; fY-=zbN.y; K=sqrt(fX*fX+fY*fY); K/=S; K=1/K;p1=head; if(K4000)do / p2=p1-next ;p1-dx+=(-fX/S*p1-s);/p2-x=p1-x+p2-dx;p1-dy+=(-fY/S*p1-s);/p2-y=p1-y+p1-dy;p1=p1-next ;while(p1-next !=NULL);p1=head; p1-x=zb0.x+p1-dx; p1-y=zb0.y+p1-dy;do p2=p1-next; p2-x=p1-x+p2-dx; p2-y=p1-y+p2-dy; p1=p1-next ;while(p2-next !=NULL); else printf(the error is out of the limite!),exit(0);printf(fX=%6.3lfm fY=%6.3lfm fS=%6.3lfm K=1 / %dn,fX,fY,sqrt(fX*fX+fY*fY),(int)K);p1=head;do printf(%8.3lf %8.3lfn,p1-x,p1-y);p1=p1-next;while(p1-next !=NULL);fclose(fp);if(fp=fopen(d:procoordinate.dat,w)=NULL)printf(cannot open this file!n);fprintf(fp,fx=%.3lf mn,fX);fprintf(fp,fy=%.3lf mn,fY);fprintf(fp,fs=%.3lf mn,sqrt(fX*fX+fY*fY);fprintf(fp,K=1 / %dn,(int)K);fprintf(fp,The coordinates are(m):n);p1=head;fprintf(fp,1%8.3lf %8.3lfn,zb0.x,zb0.y);i=1;do fprintf(fp,%d%8.3lf %8.3lfn,i+1,p1-x,p1-y);i+;p1=p1-next;while(p1-next !=NULL);fclose(fp);
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!