rootuss

Newton- Raphson ver2

Feb 5th, 2017
166
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<iostream>
  2. #include<cstdlib>
  3. #include<iomanip>
  4. #include<cmath>
  5. using namespace std;
  6.  
  7. void oblicz(void)
  8. {
  9.     double p;
  10.     double epsilon;
  11.     int ilosc_iteracji;
  12.  
  13.     cout<<"Podaj liczbe nieujemna do wyliczenia pierwiasteka kwadratowego: ";
  14.     cin>>p;
  15.  
  16.     cout<<"Podaj dokladnosc obliczen(epsilon): ";
  17.     cin>>epsilon;
  18.  
  19.     cout<<"Podaj maksymalna ilosc teracji: ";
  20.     cin>>ilosc_iteracji;
  21.  
  22.     double a = p;
  23.     int i=0;
  24.  
  25.     while(abs(a-(p/a))>=epsilon && i<ilosc_iteracji)
  26.        {
  27.            cout<<"Krok "<<i+1<<endl;
  28.             double roznica= abs(a-(p/a));
  29.             a=(a+(p/a))/2;
  30.             double b=p/a;
  31.             cout<<"obecnie a wynosi: "<<fixed<<setprecision(2)<<a<<endl;
  32.             cout<<"obecnie b wynosi: "<<fixed<<setprecision(2)<<b<<endl;
  33.  
  34.             cout<<"roznica miedzy bokami wynosi: "<<fixed<<setprecision(6)<<roznica<<endl<<endl;
  35.  
  36.            i++;
  37.        }
  38.  
  39.     cout<<"\n\nPierwiastek z liczby "<<fixed<<setprecision(2)<<p<<" wynosi ";
  40.     cout<<fixed<<setprecision(4)<<a<<endl<<endl<<endl;
  41. }
  42.  
  43. int main()
  44. {
  45.     cout<<"PROGRAM LICZACY PIERWIASTEK KWADRATOWY Z LICZBY NIEUJEMNEJ \nALGORYTMEM NEWTONA-RAPHSONA (metoda HERONA)\n"<<endl;
  46.  
  47.     oblicz();
  48.  
  49.     system("pause");
  50.     return 0;
  51. }
RAW Paste Data