fork download
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7. // Stała liczba > 1
  8. double A = 15.0;
  9.  
  10. // Przedział początkowy
  11. double a = 1.0;
  12. double b = A;
  13. double c;
  14.  
  15. // Dokładność
  16. double eps = 1e-6;
  17.  
  18. // Licznik iteracji
  19. int iteracje = 0;
  20.  
  21. // Metoda bisekcji
  22. while ((b - a) > eps) {
  23. c = (a + b) / 2.0;
  24. iteracje++;
  25.  
  26. if (c * c > A)
  27. b = c;
  28. else
  29. a = c;
  30. }
  31.  
  32. cout << "Przyblizona wartosc sqrt(" << A << ") = " << c << endl;
  33. cout << "Liczba iteracji: " << iteracje << endl;
  34.  
  35. return 0;
  36. }
  37.  
Success #stdin #stdout 0.01s 5328KB
stdin
Standard input is empty
stdout
Przyblizona wartosc sqrt(15) = 3.87298
Liczba iteracji: 24