您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 机械优化设计实验报告
实验报告课程名称:机械优化设计班级:机械3班实验日期:2016.5.25姓名:学号:指导教师:实验名称:进退法实验序号:1实验成绩:(1)实验目的:通过实验教学加深学生对优化设计方法的理解,培养学生程序调试和出错处理的能力,提高学生应用优化设计方法和程序设计的能力。本实验课程的基本要求:1)熟悉VisualC++的使用,掌握设计程序和调试程序的基本方法。2)掌握一些重要优化算法,并具有较强的编程能力和解决实际优化问题的能力。3)具有设计简单综合应用型程序的能力。(2)实验内容:1.调试用例题题目及正确结果:(1)调试题目为教材P53习题3.1X0=0时:A=0.3B=1.5X0=1.8时:A=-1.5B=-0.3(2)调试题目为教材P42例3.1A=1B=72.调试过程:(1)#includestdio.h#defineN1voidmain(){floatgs(floatx[N]);floatx[N],s[N],f[2],z[N],t,a,b;inti;for(i=0;iN;i++){printf(\n请输入初始点x[%d]=,i);scanf(%f,&x[i]);}printf(\n请输入步长:);scanf(%f,&t);for(i=0;iN;i++){printf(\n请输入搜索方向s[%d]=,i);scanf(%f,&s[i]);}a=0;b=t;f[0]=gs(x);for(i=0;iN;i++)z[i]=x[i]+b*s[i];f[1]=gs(z);if(f[1]f[0]){do{t=2*t;b=b+t;f[0]=f[1];for(i=0;iN;i++)z[i]=x[i]+b*s[i];f[1]=gs(z);if(f[0]f[1])a=b-t;elsebreak;}while(f[0]f[1]);printf(\nA=%f,B=%f\n,a,b);}else{t=0-t;do{a=a+t;f[1]=f[0];for(i=0;iN;i++)z[i]=x[i]+a*s[i];f[0]=gs(z);if(f[1]f[0]){b=a-t;t=2*t;}elsebreak;}while(f[1]f[0]);printf(\nA=%f,B=%f\n,a,b);}}floatgs(floatz[N]){floatf;f=3*z[0]*z[0]*z[0]-8*z[0]+9;return(f);}(2)#includestdio.h#defineN1voidmain(){floatgs(floatx[N]);floatx[N],s[N],f[2],z[N],t,a,b;inti;for(i=0;iN;i++){printf(\n请输入初始点x[%d]=,i);scanf(%f,&x[i]);}printf(\n请输入步长:);scanf(%f,&t);for(i=0;iN;i++){printf(\n请输入搜索方向s[%d]=,i);scanf(%f,&s[i]);}a=0;b=t;f[0]=gs(x);for(i=0;iN;i++)z[i]=x[i]+b*s[i];f[1]=gs(z);if(f[1]f[0]){do{t=2*t;b=b+t;f[0]=f[1];for(i=0;iN;i++)z[i]=x[i]+b*s[i];f[1]=gs(z);if(f[0]f[1])a=b-t;elsebreak;}while(f[0]f[1]);printf(\nA=%f,B=%f\n,a,b);}else{t=0-t;do{a=a+t;f[1]=f[0];for(i=0;iN;i++)z[i]=x[i]+a*s[i];f[0]=gs(z);if(f[1]f[0]){b=a-t;t=2*t;}elsebreak;}while(f[1]f[0]);printf(\nA=%f,B=%f\n,a,b);}}floatgs(floatz[N]){floatf;f=3*z[0]*z[0]*z[0]-8*z[0]+9;return(f);}3.调试结果:(1)(2)
本文标题:机械优化设计实验报告
链接地址:https://www.777doc.com/doc-5344142 .html