资源简介
多维进退-黄金分割法 用进退法确定区间 黄金分割法求极值
代码片段和文件信息
#include
#include
#include
#define N 2
double objf(double x[])
{
double ff;
ff=60-10*x[0]-4*x[1]+x[0]*x[0]+x[1]*x[1]-x[0]*x[1];
return(ff);
}
void jtf(double x0[]double h0double s[]int ndouble a[]double b[])
{
int i;
double *x[3]hf1f2f3;
for(i=0;i<3;i++)
x[i]=(double *)malloc(n*sizeof(double));
h=h0;
for(i=0;i *(x[0]+i)=x0[i];
f1=objf(x[0]);
for(i=0;i *(x[1]+i)=*(x[0]+i)+h*s[i];
f2=objf(x[1]);
if(f2>=f1)
{
h=-h;
for(i=0;i *(x[2]+i)=*(x[0]+i);
f3=f1;
for(i=0;i {
*(x[0]+i)=*(x[1]+i);
*(x[1]+i)=*(x[2]+i);
}
f1=f2;f2=f3;
}
for(;;)
{
h=2*h;
for(i=0;i *(x[2]+i)=*(x[1]+i)+h*
- 上一篇:山东大学面向对象纸牌实验
- 下一篇:按一下按键蜂鸣器响一秒
评论
共有 条评论