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

📄 1_2.c

📁 数值分析的一些常用计算
💻 C
字号:

  #include "stdio.h"
  #include "math.h"
  int newt(x,eps,js,f)
  int js;
  double *x,eps;
  void (*f)();
  { int k,l;
    double y[2],d,p,x0,x1;
    l=js; k=1; x0=*x;
    (*f)(x0,y);
    d=eps+1.0;
    while ((d>=eps)&&(l!=0))
      { if (fabs(y[1])+1.0==1.0)
          { printf("err\n"); return(-1);}
        x1=x0-y[0]/y[1];
        (*f)(x1,y);
        d=fabs(x1-x0); p=fabs(y[0]);
        if (p>d) d=p;
        x0=x1; l=l-1;
      }
    *x=x1;
    k=js-l;
    return(k);
  }
 void newtf(x,y)
 double x,y[2];
 {
   y[0]=log(x+sin(x));
   y[1]=(1+cos(x))/(x+sin(x));
   return;     
        }
  int main()
  {
   int js,k;
   double x,eps;
   void newtf(double,double[]);
   eps=0.000001;
   js=60;
   x=1.5;
   k=newt(&x,eps,js,newtf);
   if(k>=0)
     printf("k=%d x=%13.7e\n",k,x);
     printf("\n");
   getch();       
   }

⌨️ 快捷键说明

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