#include <iostream>
#include <cmath>
using namespace std;
// Definicja funkcji
double f(double x)
{
return 0.25 * x * x - 2.0;
}
int main()
{
double x0 = 2.0; // pierwszy punkt
double x1 = 4.0; // drugi punkt
double eps = 1e-6;
double x2;
// Metoda siecznej
do
{
x2 = x1 - f(x1) * (x1 - x0) / (f(x1) - f(x0));
x0 = x1;
x1 = x2;
} while (fabs(f(x1)) > eps);
cout << "Miejsce zerowe: x = " << x1 << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKLy8gRGVmaW5pY2phIGZ1bmtjamkKZG91YmxlIGYoZG91YmxlIHgpCnsKICAgIHJldHVybiAwLjI1ICogeCAqIHggLSAyLjA7Cn0KCmludCBtYWluKCkKewogICAgZG91YmxlIHgwID0gMi4wOyAgIC8vIHBpZXJ3c3p5IHB1bmt0CiAgICBkb3VibGUgeDEgPSA0LjA7ICAgLy8gZHJ1Z2kgcHVua3QKICAgIGRvdWJsZSBlcHMgPSAxZS02OwogICAgZG91YmxlIHgyOwoKICAgIC8vIE1ldG9kYSBzaWVjem5lagogICAgZG8KICAgIHsKICAgICAgICB4MiA9IHgxIC0gZih4MSkgKiAoeDEgLSB4MCkgLyAoZih4MSkgLSBmKHgwKSk7CgogICAgICAgIHgwID0geDE7CiAgICAgICAgeDEgPSB4MjsKCiAgICB9IHdoaWxlIChmYWJzKGYoeDEpKSA+IGVwcyk7CgogICAgY291dCA8PCAiTWllanNjZSB6ZXJvd2U6IHggPSAiIDw8IHgxIDw8IGVuZGw7CgogICAgcmV0dXJuIDA7Cn0K