Найти корни квадратного уравнения и сделать их проверку подстановкой в уравнение - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всех приветствую. Опыта почти нет, сижу вот разбираюсь, как и что работает на си. С нахождением корней вроде как разобрался, всё считает. А вот как сделать проверку, пока не соображу. Думал подставить корни в уравнение, посчитать и сравнить с 0. Но как сравнить число double с 0 пока не пойму. Заранее благодарю за помощь.
#include <stdio.h>
#include <conio.h>
 
main()
{
    int a,b,c,D;
    double x1,x2,z1,z2,pr1,pr2,eps=0.001;
    printf("\nVvedite koeficienty a b c cherez probel: ");
    scanf("\n%d%d%d",&a,&b,&c);
    printf("\nKoeficienty a b c ravny: %d %d %d",a,b,c);
    printf("\n\nUravnenie vygliadit tak: %d*(x^2)+%d*x+%d=0",a,b,c);
    D=b*b-4*a*c;
    printf("\n\nDiskriminant raven: D=b^2-4*a*c=%d",D);
    if (D>0)
        {
            printf("\n\nD>0 znachit uravnenie imeet 2 deistvitelnyh kornia");
            x1=(double)(-b+sqrt(D))/(2*a);
            printf("\n\nx1= %f",x1);
            x2=(double)(-b-sqrt(D))/(2*a);
            printf("\n\nx2= %f",x2);
        }
    else
    if (D<0)
        {
            printf("\n\nD<0 znachit uravnenie imeet 2 kompleksnyh kornia");
            x1=(double)-b/(2*a);
            z1=(double)sqrt(-D)/(2*a);
            printf("\n\nx1= %f+%f*i",x1,z1);
            x2=(double)-b/(2*a);
            z2=(double)sqrt(-D)/(2*a);
            printf("\n\nx1= %f-%f*i",x2,z2);
        }
    else
        {
            printf("\n\nD=0 znachit uravnenie imeet 1 koren'");
            x1=(double)-b/(2*a);
            printf("\n\nx1=x2= %f",x1);
        }
    getch();
}

Решение задачи: «Найти корни квадратного уравнения и сделать их проверку подстановкой в уравнение»

textual
Листинг программы
if (fabs(double_value) < eps) {}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.077 из 5
Похожие ответы