Dobrý den,mohli by jste mi prosím poradit kde je chyba v níže uvedeném kódu? Pracuje správně,ale výpočet je nesprávný děkuji.
#include <stdio.h>
#include <MATH.H>
#include <conio.h>
int main(void)
{
float a, b, c, x1, x2, d, i, r, n;
printf("Zadej 3 cleny kvadraticke rovnice a,b,c\n");
while(scanf("%lf %lf %lf",&a, &b, &c)==0)
{
printf("Toto neni cislo...");
fflush(stdin);
}
d=(b*b-(4*a*c));
int A = (1*(d>0)) + (2*(d==0)) + (3*(d<0));
switch(A)
{
case 1 :
x1=(-b+sqrt(d))/2*a;
x2=(-b-sqrt(d))/2*a;
printf("Koren x1 je: %f. Koren x2 je: %f",x1,x2);
break;
case 2 :
x1=(-b)/(2*a);
x2=x1;
printf("Koren x1 je: %f. Koren x2 je: %f",x1,x2);
break;
case 3 :
d=fabs (d);
x1=(-b+sqrt(d))/2*a;
x2=(-b-sqrt(d))/2*a;
r=sqrt(d);
n=-(sqrt(d));
printf("Koren x1 je: %lf+%lf*i. Koren x2 je: %lf+%lf*i",x1,x2,r,n);
break;
}
return(0);
}