在网上搜了一下,不知道这个跟你的问题有没有联系,好歹不能让你零答案啊。黄金分割法:#include#includefloatd,e,f;voidmain(){printf("请输入目标函数的二次项,一次项,常数项,中间用空格分开\n");scanf("%f%f%f",&d,&e,&f);floatfox(floatx);floata0,b0,z,a,b,x1,x2,f1,f2,xx;chark,m;intn;printf("请输入初始区间a0,b0,收敛精度z,中间用空格分开\n");scanf("%f%f%f",&a,&b,&z);a=a0;b=b0;x1=a+0.382*(b-a);f1=fox(x1);x2=a+0.618*(b-a);f2=fox(x2);if(f1z){if(n==0){x1=a+0.382*(b-a);f1=fox(x1);}else{x2=a+0.618*(b-a);f2=fox(x2);}}if(f1
取消
评论