数值计算编程

来源:百度知道 编辑:UC知道 时间:2024/09/21 06:41:41
用c/c++求非线性方程的根,精度要求10的-3次方。给定方程:
(1) L=0.2nπ (2)L=16.25x-0.353x^2+0.1787sin2x 求分别当n=6,7,8,9时,x的值(用弧度表示)请给出具体程序,并写明该程序的算法。
好的话,可以再追加分数!

给你参考下吧

//牛顿下山法

//非线性方程求根

#include"iostream"
#include"stdlib.h"
#include"math.h"
#include"conio.h"
using namespace std;

double function(double x)
{
return x*x*x-x-1;
}

double function_dao(double x)
{
return 3*x*x-1;
}
void error_output(int p)
{
switch(p)
{
case 1:cout<<"超出下山次数,请另选择初值!"<<endl;
case 2:cout<<"超出迭代次数,失败!";
}

}

int main()
{

double x,e,l=1,x1;
int m,n,k=1,j;
cout<<"请输入初值: ";
cin>>x;
cout<<"输入精度: ";
cin>>e;
cout<<"输入最大迭代次数 : ";
cin>>m;
cout<<"输入最大下山次数: ";
cin>>n;

loop: