To jjub : Jasně že to bylo nedořešené, ale nemělo cenu dál se tím zabývat když mi nefungovalo ani to.. :) Teď jsem chtěl ošetřit i ty ostatní dva případy a zase jsem v úzkých. Neustále mě to háže na else na konci, ikdyž vyjde diskriminant 0 nebo menší než nula, hodí mě to na diskriminant>0 a také je tam uložena 0 ale před podmínkama je výsledek diskriminantu správný.. Poradíte?
#include <stdio.h>
int main()
{
int a, b, c;
double dis, x1, x2;
printf("Zadejte cleny kvadraticke rovnice \"a\", \"b\" a \"c\".\n");
printf("a= ");
scanf("%i", &a);
printf("b= ");
scanf("%i", &b);
printf("c= ");
scanf("%i", &c);
dis=(pow(b,2))-4*a*c;
x1=(-b+sqrt(dis))/(2*a);
x2=(-b-sqrt(dis))/(2*a);
if(dis=0)
printf("Diskriminant je 0. Rovnice ma jedno reseni, x je %fl\n.", x1);
else
{
if(dis<0)
printf("Diskriminant je mensi nez 0. Rovnice nema reseni v mnozine realnych cisel!\n");
else
printf("Diskriminant je %lf \n x1 je %lf \n x2 je %lf \n", dis, x1, x2);
}
system("PAUSE");
return 0;
}