#include <iostream>
#include <iomanip>
#include <math.h>
void czytaj_dane();
void przetworz_dane();
void wyswietl_dane();
float a,b,c,x1,x2,x0;
char amount_of_elements;
int main()
{
std::cout<<std::fixed<<std::setprecision(2);
czytaj_dane();
przetworz_dane();
wyswietl_dane();
return 0;
}
void czytaj_dane()
{
std::cout<<"Podaj dane rownania\n";
std::cout<<"Podaj a: ";
std::cin>>a;
if(a==0)
{
std::cout<<"Niedozwolona wartosc!!! Nacisnij Enter";
getchar();
exit(1);
}else
{
std::cout<<"b: ";
std::cin>>b;
std::cout<<"i c: ";
std::cin>>c;
}
}
void przetworz_dane()
{
float delta=b*b-4*a*c;
if(delta<0) amount_of_elements=0;
if(delta==0) amount_of_elements=1;
if(delta>0) amount_of_elements=2;
switch (amount_of_elements)
{
case 1:
x0=-b/2*a;
break;
case 2: {
x1=(-b-sqrt(delta))/2*a;
x2=(-b+sqrt(delta))/2*a;
}break;
}
}
void wyswietl_dane()
{
switch(amount_of_elements)
{
case 0:
std::cout<<"Rownanie nie posiada pierwiastkow";
break;
case 1:
std::cout<<"Rownanie ma jeden pierwiastek rowny: "<<x0;
break;
case 2: {
std::cout<<"Rownanie ma dwa pierwiastki\n";
std::cout<<"x1: "<<x1;
std::cout<<"\ni x2: "<<x2;
}
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPG1hdGguaD4KCnZvaWQgY3p5dGFqX2RhbmUoKTsKdm9pZCBwcnpldHdvcnpfZGFuZSgpOwp2b2lkIHd5c3dpZXRsX2RhbmUoKTsKCmZsb2F0IGEsYixjLHgxLHgyLHgwOwpjaGFyIGFtb3VudF9vZl9lbGVtZW50czsKCgppbnQgbWFpbigpCnsKCXN0ZDo6Y291dDw8c3RkOjpmaXhlZDw8c3RkOjpzZXRwcmVjaXNpb24oMik7Cgljenl0YWpfZGFuZSgpOwoJcHJ6ZXR3b3J6X2RhbmUoKTsKCXd5c3dpZXRsX2RhbmUoKTsKCQoJcmV0dXJuIDA7Cn0KCnZvaWQgY3p5dGFqX2RhbmUoKQoJewoJCXN0ZDo6Y291dDw8IlBvZGFqIGRhbmUgcm93bmFuaWFcbiI7CgkJc3RkOjpjb3V0PDwiUG9kYWogYTogIjsKCQlzdGQ6OmNpbj4+YTsKCQlpZihhPT0wKQoJCXsKCQkJc3RkOjpjb3V0PDwiTmllZG96d29sb25hIHdhcnRvc2MhISEgTmFjaXNuaWogRW50ZXIiOwoJCQlnZXRjaGFyKCk7CgkJCWV4aXQoMSk7CgkJfWVsc2UKCQl7CgkJc3RkOjpjb3V0PDwiYjogIjsKCQlzdGQ6OmNpbj4+YjsKCQlzdGQ6OmNvdXQ8PCJpIGM6ICI7CgkJc3RkOjpjaW4+PmM7CgkJfQoJfQoKdm9pZCBwcnpldHdvcnpfZGFuZSgpCnsKCQlmbG9hdCBkZWx0YT1iKmItNCphKmM7CgkJCgkJaWYoZGVsdGE8MCkgYW1vdW50X29mX2VsZW1lbnRzPTA7CgkJaWYoZGVsdGE9PTApIGFtb3VudF9vZl9lbGVtZW50cz0xOwoJCWlmKGRlbHRhPjApIGFtb3VudF9vZl9lbGVtZW50cz0yOwoJCQoJCQoJCXN3aXRjaCAoYW1vdW50X29mX2VsZW1lbnRzKQoJCXsKCQkJCgkJCQoJCQljYXNlIDE6CgkJCXgwPS1iLzIqYTsJCQkKCQkJYnJlYWs7CgkJCQoJCQljYXNlIDI6IHsKCQkJCgkJCXgxPSgtYi1zcXJ0KGRlbHRhKSkvMiphOwoJCQl4Mj0oLWIrc3FydChkZWx0YSkpLzIqYTsKCQkJCgkJfWJyZWFrOwoJCX0JCn0Kdm9pZCB3eXN3aWV0bF9kYW5lKCkKewoJc3dpdGNoKGFtb3VudF9vZl9lbGVtZW50cykKCXsKCWNhc2UgMDoKCXN0ZDo6Y291dDw8IlJvd25hbmllIG5pZSBwb3NpYWRhIHBpZXJ3aWFzdGtvdyI7CglicmVhazsKCWNhc2UgMTogCgkKCXN0ZDo6Y291dDw8IlJvd25hbmllIG1hIGplZGVuIHBpZXJ3aWFzdGVrIHJvd255OiAiPDx4MDsKCWJyZWFrOwoJCgljYXNlIDI6IHsKCXN0ZDo6Y291dDw8IlJvd25hbmllIG1hIGR3YSBwaWVyd2lhc3RraVxuIjsKCXN0ZDo6Y291dDw8IngxOiAiPDx4MTsKCXN0ZDo6Y291dDw8IlxuaSB4MjogIjw8eDI7CgkKCQkJfQoJfQoJCn0K