#include <iostream>
#include <cmath>
using namespace std;
void rozwiaz(float a, float b, float c) {
float delta;
float pierwiastek_delta;
float x1, x2;
cout << "\na = " << a << ", b = " << b << ", c = " << c << endl;
delta = b * b - 4 * a * c;
cout << "Delta = " << delta << endl;
if (delta > 0) {
pierwiastek_delta = sqrt(delta);
// algorytm z deltÄ…
x1 = (-b - pierwiastek_delta) / (2 * a);
x2 = (-b + pierwiastek_delta) / (2 * a);
cout << "Pierwiastki (delta):" << endl;
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
// sprawdzenie wzorami Viety
cout << "Sprawdzenie Viety:" << endl;
cout << "x1 + x2 = " << x1 + x2
<< " (powinno byc " << -b / a << ")" << endl;
cout << "x1 * x2 = " << x1 * x2
<< " (powinno byc " << c / a << ")" << endl;
}
else if (delta == 0) {
x1 = -b / (2 * a);
cout << "Jedno rozwiazanie: x = " << x1 << endl;
}
else {
cout << "Brak rozwiazan rzeczywistych" << endl;
}
}
int main() {
// test 1
rozwiaz(3, 4, 1);
// test 2
rozwiaz(1, 10000, 1);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCByb3p3aWF6KGZsb2F0IGEsIGZsb2F0IGIsIGZsb2F0IGMpIHsKICAgIGZsb2F0IGRlbHRhOwogICAgZmxvYXQgcGllcndpYXN0ZWtfZGVsdGE7CiAgICBmbG9hdCB4MSwgeDI7CgogICAgY291dCA8PCAiXG5hID0gIiA8PCBhIDw8ICIsIGIgPSAiIDw8IGIgPDwgIiwgYyA9ICIgPDwgYyA8PCBlbmRsOwoKICAgIGRlbHRhID0gYiAqIGIgLSA0ICogYSAqIGM7CiAgICBjb3V0IDw8ICJEZWx0YSA9ICIgPDwgZGVsdGEgPDwgZW5kbDsKCiAgICBpZiAoZGVsdGEgPiAwKSB7CiAgICAgICAgcGllcndpYXN0ZWtfZGVsdGEgPSBzcXJ0KGRlbHRhKTsKCiAgICAgICAgLy8gYWxnb3J5dG0geiBkZWx0xIUKICAgICAgICB4MSA9ICgtYiAtIHBpZXJ3aWFzdGVrX2RlbHRhKSAvICgyICogYSk7CiAgICAgICAgeDIgPSAoLWIgKyBwaWVyd2lhc3Rla19kZWx0YSkgLyAoMiAqIGEpOwoKICAgICAgICBjb3V0IDw8ICJQaWVyd2lhc3RraSAoZGVsdGEpOiIgPDwgZW5kbDsKICAgICAgICBjb3V0IDw8ICJ4MSA9ICIgPDwgeDEgPDwgZW5kbDsKICAgICAgICBjb3V0IDw8ICJ4MiA9ICIgPDwgeDIgPDwgZW5kbDsKCiAgICAgICAgLy8gc3ByYXdkemVuaWUgd3pvcmFtaSBWaWV0eQogICAgICAgIGNvdXQgPDwgIlNwcmF3ZHplbmllIFZpZXR5OiIgPDwgZW5kbDsKICAgICAgICBjb3V0IDw8ICJ4MSArIHgyID0gIiA8PCB4MSArIHgyCiAgICAgICAgICAgICA8PCAiIChwb3dpbm5vIGJ5YyAiIDw8IC1iIC8gYSA8PCAiKSIgPDwgZW5kbDsKICAgICAgICBjb3V0IDw8ICJ4MSAqIHgyID0gIiA8PCB4MSAqIHgyCiAgICAgICAgICAgICA8PCAiIChwb3dpbm5vIGJ5YyAiIDw8IGMgLyBhIDw8ICIpIiA8PCBlbmRsOwogICAgfQogICAgZWxzZSBpZiAoZGVsdGEgPT0gMCkgewogICAgICAgIHgxID0gLWIgLyAoMiAqIGEpOwogICAgICAgIGNvdXQgPDwgIkplZG5vIHJvendpYXphbmllOiB4ID0gIiA8PCB4MSA8PCBlbmRsOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgY291dCA8PCAiQnJhayByb3p3aWF6YW4gcnplY3p5d2lzdHljaCIgPDwgZW5kbDsKICAgIH0KfQoKaW50IG1haW4oKSB7CiAgICAvLyB0ZXN0IDEKICAgIHJvendpYXooMywgNCwgMSk7CgogICAgLy8gdGVzdCAyCiAgICByb3p3aWF6KDEsIDEwMDAwLCAxKTsKCiAgICByZXR1cm4gMDsKfQo=