Advertisement
yoyo106

Newton Raphson

Dec 7th, 2020
842
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.61 KB | None | 0 0
  1. double f(double x){
  2.     //sin(x) + x^2 -1
  3.     //f(x)/f'(x)
  4.     return (sin(x) + x*x - 1)/(cos(x) + 2*x);
  5.    
  6. }
  7. double next(double Xi){
  8.     //Xi+1 = Xi - f(Xi)
  9.     return Xi - f(Xi);
  10. }
  11. double errorr(double next, double cur){
  12.     return abs(next-cur);
  13. }
  14. int main(){
  15.     double cur = 1;
  16.     int i=1;
  17.     double neww;
  18.     double e=0;
  19.     do{
  20.         //cin>>prev>>cur;
  21.         neww = next(cur);
  22.         e = errorr(neww,cur);
  23.         //cout<<i++<<"\t"<<cur<<"\t"<<neww<<"\t"<<e<<endl;
  24.         printf("%d\t%.6f\t\t\t%.6f\t\t\t%.6f\n",i++,cur,neww,e);
  25.         cur = neww;
  26.     }while(e>0.01);
  27.     return 0;
  28. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement