#include <iostream>
#include <cmath>
using namespace std;
void rozwiazRownanie(double a, double b, double c)
{
cout << "Rownanie: " << a << "x^2 + " << b << "x + " << c << " = 0\n";
double delta = b * b - 4 * a * c;
cout << "Delta = " << delta << endl;
if (delta > 0)
{
double x1 = (-b - sqrt(delta)) / (2 * a);
double x2 = (-b + sqrt(delta)) / (2 * a);
cout << "Pierwiastki rzeczywiste:\n";
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
// Sprawdzenie wzorów Viete'a
cout << "Viete:\n";
cout << "x1 + x2 = " << x1 + x2 << " (powinno byc " << -b / a << ")\n";
cout << "x1 * x2 = " << x1 * x2 << " (powinno byc " << c / a << ")\n";
}
else if (delta == 0)
{
double x = -b / (2 * a);
cout << "Jeden pierwiastek podwojny:\n";
cout << "x = " << x << endl;
}
else
{
cout << "Brak pierwiastkow rzeczywistych.\n";
}
cout << "---------------------------\n";
}
int main()
{
// Rownanie 1
rozwiazRownanie(5, 4, 2);
// Rownanie 2
rozwiazRownanie(1, 10000, 1);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIHJvendpYXpSb3duYW5pZShkb3VibGUgYSwgZG91YmxlIGIsIGRvdWJsZSBjKQp7CiAgICBjb3V0IDw8ICJSb3duYW5pZTogIiA8PCBhIDw8ICJ4XjIgKyAiIDw8IGIgPDwgInggKyAiIDw8IGMgPDwgIiA9IDBcbiI7CgogICAgZG91YmxlIGRlbHRhID0gYiAqIGIgLSA0ICogYSAqIGM7CiAgICBjb3V0IDw8ICJEZWx0YSA9ICIgPDwgZGVsdGEgPDwgZW5kbDsKCiAgICBpZiAoZGVsdGEgPiAwKQogICAgewogICAgICAgIGRvdWJsZSB4MSA9ICgtYiAtIHNxcnQoZGVsdGEpKSAvICgyICogYSk7CiAgICAgICAgZG91YmxlIHgyID0gKC1iICsgc3FydChkZWx0YSkpIC8gKDIgKiBhKTsKCiAgICAgICAgY291dCA8PCAiUGllcndpYXN0a2kgcnplY3p5d2lzdGU6XG4iOwogICAgICAgIGNvdXQgPDwgIngxID0gIiA8PCB4MSA8PCBlbmRsOwogICAgICAgIGNvdXQgPDwgIngyID0gIiA8PCB4MiA8PCBlbmRsOwoKICAgICAgICAvLyBTcHJhd2R6ZW5pZSB3em9yw7N3IFZpZXRlJ2EKICAgICAgICBjb3V0IDw8ICJWaWV0ZTpcbiI7CiAgICAgICAgY291dCA8PCAieDEgKyB4MiA9ICIgPDwgeDEgKyB4MiA8PCAiIChwb3dpbm5vIGJ5YyAiIDw8IC1iIC8gYSA8PCAiKVxuIjsKICAgICAgICBjb3V0IDw8ICJ4MSAqIHgyID0gIiA8PCB4MSAqIHgyIDw8ICIgKHBvd2lubm8gYnljICIgPDwgYyAvIGEgPDwgIilcbiI7CiAgICB9CiAgICBlbHNlIGlmIChkZWx0YSA9PSAwKQogICAgewogICAgICAgIGRvdWJsZSB4ID0gLWIgLyAoMiAqIGEpOwogICAgICAgIGNvdXQgPDwgIkplZGVuIHBpZXJ3aWFzdGVrIHBvZHdvam55OlxuIjsKICAgICAgICBjb3V0IDw8ICJ4ID0gIiA8PCB4IDw8IGVuZGw7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAgICAgY291dCA8PCAiQnJhayBwaWVyd2lhc3Rrb3cgcnplY3p5d2lzdHljaC5cbiI7CiAgICB9CgogICAgY291dCA8PCAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iOwp9CgppbnQgbWFpbigpCnsKICAgIC8vIFJvd25hbmllIDEKICAgIHJvendpYXpSb3duYW5pZSg1LCA0LCAyKTsKCiAgICAvLyBSb3duYW5pZSAyCiAgICByb3p3aWF6Um93bmFuaWUoMSwgMTAwMDAsIDEpOwoKICAgIHJldHVybiAwOwp9Cg==