logo
ООП для Заоч / Пинчук Лозовская Программир на С

Void main()

{ double a,b,c,D,x1,x2,re,im; // об’ява змінних

// введення коефіцієнтів квадратного рівняння

printf("a,b,c = "); scanf("%lf %lf %lf",&a,&b,&c);

D=sqrt(b)-4*a*c; // обчислення дискримінанта

// перевірка знака дискримінанта

if (D>=0) { // обчислення дійсних коренів рівняння

x1=(-b+sqrt(D))/(2*a);

x2=(-b-sqrt(D))/(2*a);

printf("The roots are real:\n");

printf("x1= %lf \n",x1);

printf("x1= %lf \n",x2);

}

else { // обчислення комплексних коренів рівняння

re= -b/(2*a); im= abs(sqrt(-D)/(2*a));

printf("The roots are complex:\n");

printf("%lf + %lf*i \n",re,im);

printf("%lf - %lf*i \n",re,im);

}

}

Тут функція abs(x) обчислює абсолютну величину аргументу. Викликається не стандартна бібліотечна функція abs(x), а функція з універсального модуля syst.h. Докладніше про цю та інші функції з модулю syst.h буде сказано нижче.