⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 牛顿下山.cpp

📁 这个可以很清楚的计算一些复杂的问题,很好的一中算法
💻 CPP
字号:
#include"iostream.h"
#include"conio.h"
#include"math.h"
#define f (x*x*x-x-1)/(3*x*x-1)
#define g x*x*x-x-1
#define m 10
#define n 8
#define e 0.00001
void main()
{
	int i=0,k=0;
	float a=0.6,t=1;
	float b,c,d,x;
	x=a;
	c=g;
	b=a-t*f;
	x=b;
	//cout<<b<<endl;
	d=g;
//	cout<<fabs(d)<<"    "<<fabs(c)<<endl;
	while(fabs(d)>fabs(c))
		{
		x=a;
    	c=g;
		t=t/2;
	    b=a-t*f;
    	x=b;
    	d=g;
		i=i+1;
		cout<<t<<"           "<<endl;
		cout<<d<<"           "<<endl;
		if(i>=m)
		{
			cout<<"重新选择初值a"<<endl;
			d=0;
			c=1;
			k=n+1;
		}
		
		}
	//cout<<fabs(b-a)<<endl;
	while(k<=n)
		{
		    x=b;
    	    c=g;
		    t=1;
	        b=a-t*f;
     	    x=b;
    	    d=g;
			cout<<d<<"          ";
            if(k>=n)
				cout<<"迭代失败"<<endl;
            if(fabs(b-a)<e)
			{
				cout<<"函数的解为"<<b<<endl;
				k=n+1;
			}
			else
			{
				k=k+1;
				a=b;
			}
			
    	}
//	cout<<fabs(b-a)<<"  "<<k<<endl;
	getch();
}

		









⌨️ 快捷键说明

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