erfenfa.cpp

来自「用二分法求正根---学习数值计算的一个很的资料」· C++ 代码 · 共 31 行

CPP
31
字号
 	//用二分法求方程x2-x-1=0的正根,要求准确到小数点后第一位
 	#include<iostream.h>
    #include<iomanip.h>
int main()
{
	float left=0,right;      //左边界初始值为0 
	float m;
	float mid;
 float r1=1000,r2=100;    //赋值原则,保证for语句至少执行两次
	for(m=0;;m++) if((m-1)*m-1>0) break;  //自动搜寻右边界 
	right=m; 
	for(int a=0;;a++) 
	{
		mid=float(left+right)/2;
		if(r1-r2<0.05&&r2-r1<0.05)
		{
			cout<<setiosflags(ios::fixed)<<setprecision(1)<<float(r2+r1)/2<<endl;				
			break;
		} else if((mid-1)*mid-1>0) {
			right=mid;
			if(a%2==0) r1=mid;
			else r2=mid;
		} else if((mid-1)*mid-1<0) {
			left=mid;
			if(a%2==0) r1=mid;
			else r2=mid;
		}
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?