Prośba o sprawdzenie kodu - jezyk C, nie C++

0

Witam napisałem program liczący x1 oraz x2 a także x0 czyli jaśniej mówiąc miejsca zerowe funkcji kwadratowej i mam taki o to problem ponieważ program działa elegancko ale po każdym obliczeniu czy to x1 i x2 czy tylko x0 program także wypisuje to co jest za funkcja else czyli to kiedy delta jest mniejsza od 0. Jeśli ktoś mógłby sprawdzić gdzie jest błąd i co zrobić by komunikat został wyświetlony tylko kiedy argument zostanie spełniony tutaj załączam
kod

 #include<stdio.h>
#include<stdlib.h>
#include<math.h>

main()
{
	puts("Program obliczajacy pierwiastki rownania kwadratowego");
	int A,B,C;
	double delta,x1,x2,x0;
	printf("Wprowadz A:");
	scanf("%d",&A);
	printf("\nWprowadz B:");
	scanf("%d",&B);
	printf("\nWprowadz C:");
	scanf("%d",&C);
	delta=(B*B)-4*A*C;
		if(delta>0)
	{
	
	x1=(-B-sqrt(delta))/(2*A);
	x2=(-B+sqrt(delta))/(2*A);
	printf("x1=%5.3f\n",x1);
	printf("x2=%5.3f\n",x2);
}
	else if (delta==0)
	{
		x0=(-B/2*A);
		printf("x0=%5.3f\n",x0);
	}
	else  (delta<0);
	{
	printf("Brak Rozwiazan");
	}
	return(0);
	}
	

z góry dziękuję za pomoc

0
  else
    (delta < 0);
  {
    printf("Brak Rozwiazan");
  }

he?

0
 [...]
    else if (delta==0)
    {
        x0=(-B/2*A);
        printf("x0=%5.3f\n",x0);
    }
    else  (delta<0); // Nie ma tu być średnika i else if* 
    {
    printf("Brak Rozwiazan");
    }
    return(0);
    }

"else" z średnikiem jest bez sensu bo program nie będzie wykonywał "printf" w oparciu o warunek tylko po prostu wejdzie tam co byś nie zrobił.

3

zamień: else (delta<0);
na: else /* (delta<0); */

1 użytkowników online, w tym zalogowanych: 0, gości: 1