#include<stdio.h>
#include<math.h>
#define R 0.001
double f(double x)
{ double t;
t=x*x-10*x+36;
return t;
}
int main()
{
double h0=R,y1,y2,y3,x1,x2,x3,h;
x1=0;h=h0;x2=h;
y1=f(x1);y2=f(x2);
if(y2>y1)
{h=-h;
x3=x1;
y3=y1;
x1=x2;
y1=y2;
x2=x3;
y2=y3;
}
x3=x2+h;y3=f(x3);
while(y3<y2)
{h=2*h;
x1=x2;
y1=y2;
x2=x3;
y2=y3;
x3=x2+h;
y3=f(x3);
}
printf("f(%f)=%f,f(%f)=%f,f(%f)=%f\n",x1,y1,x2,y2,x3,y3);
}
- 1
- 2
- 3
前往页