1)试将方程 改写成不同的等价形式以进行迭代(不少于3种),观察这些迭代序列是否收敛?

来源:百度知道 编辑:UC知道 时间:2024/05/25 00:06:42

设方程是f(x)=0的话有如下三种形式:
x=f(x)+x;
x=(f(x)+1);
x=x+f(x)/(2x+3);
这几种形式只是举例,为了求解的准确性,最好,根据所以给方程本身的形式做变形
代码如下:
#include "stdafx.h"
#include "math.h"
#include "iostream.h"
float fun(float x)//方程等价形式等号的右边
{
return cos(x);//所解方程是c=cosx
}
main()
{
float x,x0,derta;
cout<<"请给初值:x0="<<endl;
cin>>x0;
cout<<"你所要的精度是:derta"<<endl;
cin>>derta;
x=fun(x0);
while(abs(x-x0)>derta)
{
x0=fun(x);
x=fun(x0);

}
cout<<"方程的解x="<<x;
}