W kodzie sprawdzane jest czy wyróżnik == 0. Możesz dodać dodatkowe instrukcje sprawdzające > i <:
#include <iostream>
#include <cmath>
using namespace std;
double a,b,c,x1,x2,delta;
main()
{
cout<<"Podaj a,b i c";
cin>>a>>b>>c;
if(a==0)
cout<<"To nie jest rownanie kwadratowe";
else
delta=(b*b)-4*a*c;
if(delta==0)
{
x1=-b/(2*a);
cout<<"x1= "<<endl;
}
else
{
if(delta>0)
{
x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);
cout<<"x1="<<x1<<"x2= "<<x2;
}
else cout<<"Brak rozwiazan";
}
return 0;
}
Natomiast zdecydowanie ładniej i przejrzyściej byłoby z instrukcjami else if i po uporządkowaniu kodu (trochę spacji i tabulacji):
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
double a, b, c;
cout << "Podaj a, b i c: ";
cin >> a >> b >> c;
if(a==0)
{
cout<<"To nie jest rownanie kwadratowe";
}
else
{
double delta = b*b-4*a*c;
double x1, x2;
if( delta > 0 )
{
x1=(-b-sqrt(delta))/(2*a);
x2=(-b+sqrt(delta))/(2*a);
cout<<"x1 = "<<x1<<"\n";
cout<<"x2 = "<<x2;
}
else if(delta==0)
{
x1=-b/(2*a);
cout<<"x0 = "<<x1;
}
else // delta < 0
{
cout<<"Brak rozwiazan";
}
}
cout<<endl;
return 0;
}