📄 外推法.cpp
字号:
#include<iostream.h>
#include<math.h>
double f(double x)
{
double y=x*x-4*x+12;
return y;
}
void main()
{
double a,h0,a1,a2,f1,f2;
cout<<"请输入已知左边界点及步长:\n";
cin>>a>>h0;
a1=a;
a2=a1+h0;
f1=f(a1);
f2=f(a2);
if(f1>f2)
{
h0=2*h0;
a2=a2+h0;
f1=f2;
f2=f(a2);
while(f2<f1)
{
a1=a2-h0;
h0=2*h0;
a2=a2+h0;
f1=f2;
f2=f(a2);
}
cout<<"最优点区间为:"<<"["<<a1<<","<<a2<<"]"<<'\n';
}
else
{
h0=-h0/4;
a1=a1+h0;
f2=f1;
f1=f(a1);
while(f2>f1)
{
a2=a1-h0;
h0=2*h0;
a1=a1+h0;
f2=f1;
f1=f(a1);
}
cout<<"最优点区间为:"<<"["<<a1<<","<<a2<<"]"<<'\n';
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -