ţ

来自「在VC下实现的一个小程序 牛顿迭带法 先确定有根区间,再算值」· 代码 · 共 30 行

TXT
30
字号
# include <iostream.h>
# include <stdio.h>
# include <math.h>

float f(float x)
{  return (3*x*x-exp(x));
}
float df(float x)
{  return (6*x-exp(x));
}
void main()
{  int a=-10;
   float x0,x1; 
   while (f(a)*f(a+1)>0)
	      a++;
   printf("有根区间为[%d,%d]\n",a,a+1);
   printf("在有根区间为[%d,%d]寻找根x1,请输入x0:\n",a,a+1);
   cin>>x0;
   x1=x0-f(x0)/df(x0);

   do
   {x0=x1;
    if (df(x0)==0)
        cout<<"奇异,请重新输入x0"<<endl;  
	x1=x0-f(x0)/df(x0);
   }while (fabs(x1-x0)>= 1e-9);
   printf("有根区间[%d,%d]的根为%f\n",a,a+1,x1);
   
  
}

⌨️ 快捷键说明

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