#include <iostream>
#include <cmath>
using namespace std;
int main() {
/* ===== PRZYPADEK 1 =====
3x^2 + 4x + 5 = 0
*/
{
double a = 3.0;
double b = 4.0;
double c = 5.0;
double delta = b * b - 4 * a * c;
cout << "Rownanie: 3x^2 + 4x + 5 = 0" << endl;
cout << "Delta = " << delta << endl;
if (delta < 0) {
cout << "Brak pierwiastkow rzeczywistych." << endl;
}
cout << endl;
}
/* ===== PRZYPADEK 2 =====
x^2 + 10000x + 1 = 0
float + Vieta
*/
{
float a = 1.0f;
float b = 10000.0f;
float c = 1.0f;
float delta = b * b - 4 * a * c;
cout << "Rownanie: x^2 + 10000x + 1 = 0" << endl;
cout << "Delta = " << delta << endl;
if (delta > 0) {
// liczymy tylko jeden pierwiastek klasycznie
float x1 = (-b - sqrt(delta)) / (2 * a);
// drugi z wzoru Viety
float x2 = (c / a) / x1;
cout << "Pierwiastki (delta + Vieta):" << endl;
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
}
cout << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CgogICAgLyogPT09PT0gUFJaWVBBREVLIDEgPT09PT0KICAgICAgIDN4XjIgKyA0eCArIDUgPSAwCiAgICAqLwogICAgewogICAgICAgIGRvdWJsZSBhID0gMy4wOwogICAgICAgIGRvdWJsZSBiID0gNC4wOwogICAgICAgIGRvdWJsZSBjID0gNS4wOwoKICAgICAgICBkb3VibGUgZGVsdGEgPSBiICogYiAtIDQgKiBhICogYzsKICAgICAgICBjb3V0IDw8ICJSb3duYW5pZTogM3heMiArIDR4ICsgNSA9IDAiIDw8IGVuZGw7CiAgICAgICAgY291dCA8PCAiRGVsdGEgPSAiIDw8IGRlbHRhIDw8IGVuZGw7CgogICAgICAgIGlmIChkZWx0YSA8IDApIHsKICAgICAgICAgICAgY291dCA8PCAiQnJhayBwaWVyd2lhc3Rrb3cgcnplY3p5d2lzdHljaC4iIDw8IGVuZGw7CiAgICAgICAgfQogICAgICAgIGNvdXQgPDwgZW5kbDsKICAgIH0KCiAgICAvKiA9PT09PSBQUlpZUEFERUsgMiA9PT09PQogICAgICAgeF4yICsgMTAwMDB4ICsgMSA9IDAKICAgICAgIGZsb2F0ICsgVmlldGEKICAgICovCiAgICB7CiAgICAgICAgZmxvYXQgYSA9IDEuMGY7CiAgICAgICAgZmxvYXQgYiA9IDEwMDAwLjBmOwogICAgICAgIGZsb2F0IGMgPSAxLjBmOwoKICAgICAgICBmbG9hdCBkZWx0YSA9IGIgKiBiIC0gNCAqIGEgKiBjOwogICAgICAgIGNvdXQgPDwgIlJvd25hbmllOiB4XjIgKyAxMDAwMHggKyAxID0gMCIgPDwgZW5kbDsKICAgICAgICBjb3V0IDw8ICJEZWx0YSA9ICIgPDwgZGVsdGEgPDwgZW5kbDsKCiAgICAgICAgaWYgKGRlbHRhID4gMCkgewogICAgICAgICAgICAvLyBsaWN6eW15IHR5bGtvIGplZGVuIHBpZXJ3aWFzdGVrIGtsYXN5Y3puaWUKICAgICAgICAgICAgZmxvYXQgeDEgPSAoLWIgLSBzcXJ0KGRlbHRhKSkgLyAoMiAqIGEpOwoKICAgICAgICAgICAgLy8gZHJ1Z2kgeiB3em9ydSBWaWV0eQogICAgICAgICAgICBmbG9hdCB4MiA9IChjIC8gYSkgLyB4MTsKCiAgICAgICAgICAgIGNvdXQgPDwgIlBpZXJ3aWFzdGtpIChkZWx0YSArIFZpZXRhKToiIDw8IGVuZGw7CiAgICAgICAgICAgIGNvdXQgPDwgIngxID0gIiA8PCB4MSA8PCBlbmRsOwogICAgICAgICAgICBjb3V0IDw8ICJ4MiA9ICIgPDwgeDIgPDwgZW5kbDsKICAgICAgICB9CgogICAgICAgIGNvdXQgPDwgZW5kbDsKICAgIH0KCiAgICByZXR1cm4gMDsKfQoK