#include <iostream>
#include <cmath>
using namespace std;
int main() {
double a = 5.0; // liczba, z ktorej liczymy pierwiastek (a > 1)
double x0 = 1.0;
double x1 = a;
double x2;
double eps = 0.0001;
// Metoda bisekcji
while ((x1 - x0) > eps) {
x2 = (x0 + x1) / 2.0;
if (x2 * x2 > a)
x1 = x2;
else
x0 = x2;
}
cout << "Przyblizona wartosc sqrt(" << a << ") = " << x2 << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CiAgICBkb3VibGUgYSA9IDUuMDsgICAgICAgLy8gbGljemJhLCB6IGt0b3JlaiBsaWN6eW15IHBpZXJ3aWFzdGVrIChhID4gMSkKICAgIGRvdWJsZSB4MCA9IDEuMDsKICAgIGRvdWJsZSB4MSA9IGE7CiAgICBkb3VibGUgeDI7CiAgICBkb3VibGUgZXBzID0gMC4wMDAxOwoKICAgIC8vIE1ldG9kYSBiaXNla2NqaQogICAgd2hpbGUgKCh4MSAtIHgwKSA+IGVwcykgewogICAgICAgIHgyID0gKHgwICsgeDEpIC8gMi4wOwoKICAgICAgICBpZiAoeDIgKiB4MiA+IGEpCiAgICAgICAgICAgIHgxID0geDI7CiAgICAgICAgZWxzZQogICAgICAgICAgICB4MCA9IHgyOwogICAgfQoKICAgIGNvdXQgPDwgIlByenlibGl6b25hIHdhcnRvc2Mgc3FydCgiIDw8IGEgPDwgIikgPSAiIDw8IHgyIDw8IGVuZGw7CgogICAgcmV0dXJuIDA7Cn0K