problem je sto ti je samo prva instrukcija za D>0 pod else-om, pa ti se za negativno D trazi koren (kod x2=...) i zato prijavljuje gresku
prepravljeno je ovako:
#include<iostream.h>
#include<math.h>
int main()
{
float a,b,c,x1,x2,D;
cout <<"Unesite a: ";
cin >>a;
cout <<"Unesite b: ";
cin >>b;
cout <<"Unesite c: ";
cin >>c;
D =b*b-4*a*c;
if (D < 0)
cout <<"Nema resenja";
else if (D == 0)
cout <<"Jednacina ima jedno resenje" <<-b/(2*a)<<endl;
else {
x1=(-b+sqrt(D))/(2*a);
x2=(-b-sqrt(D))/(2*a);
cout <<"Jednacina ima dva realna resenja :"<<x1<<" i "<<x2; }
return 0;
}
Dodao sam ti zagrade, kako bi ovaj blok naredbi bio pod else-om, kako si verovatno i hteo i if(D==0) sam prebacio na else if, jer nema potrebe proveravati da li je D=0, ako je D<0.
|