by Dinesh Thakur

The roots of a quadratic equation are real if discriminator b2-4ac is greater than or equal to zero; otherwise they are complex conjugate. However, if the roots are complex conjugate, i.e., if b2-4ac<0, the evaluation of expression sqrt (b*b-4*a*c) causes a domain error and the program halts abruptly.

#include <stdio.h>
#include <conio.h>
#include <math.h>
void main()
{
    double a,b,c,d,root1,root2;
    clrscr();
    printf("Enter Value for a : ");
    scanf("%lf", &a);
    printf("Enter Value for b : ");
    scanf("%lf", &b);
    printf("Enter Value for c : ");
    scanf("%lf", &c);
    if (a==0.0)
        {
              printf ("\n a Should NOT be 0");
              exit(0);
        }
             d = b * b - 4 * a * c;
             if ( d > 0.0 )
              {
                   d = sqrt( d );
                   root1 = ( -b + d ) / ( 2 * a );
                   root2 = ( -b - d ) / ( 2 * a );
                   printf("\nThe Roots %.4lf and %.4lf were Found\n\n", root1, root2 );
              }
                   else if ( d == 0.0 )
             {
                   root1 = -b / ( 2 * a );
                   printf("\nA Single Root, %.4lf, was Found\n\n", root1 );
             }
           else
            {
                  printf("\nNo real roots were found\n\n");
            }
                  getch();

Roots of a Quadratic Equation





About Us

Dinesh ThakurDinesh Thakur is a Columinist and designer with strong passion and founder of Computer Notes. if you have any ideas or any request Find Dinesh Thakur on