### Write a C program to find the roots of a quadratic equation

In this article, we will write a C program to find the roots of a quadratic equation.

# ALGORITHM:

Step 1: Start

Step 3: calculate disc = b*b-4*a*c

Step 4: if(disc>0) Begin

Step 5: root1=(-b+sqrt(disc))/(2*a)

Step 6: root2=(-b-sqrt(disc))/(2*a)

Step 7: Print “Root1” , “Root2” End

Step 8: else if(disc=0) Begin

Step 9: root1=-b/(2*a)

Step 10: root2=root1;

Step 11: Print “Root1” , “Root2” End

Step 12: else

Step 13: Print Roots are imaginary

Step 14: Stop

# Write a C program to find the roots of a quadratic equation

``````#include <stdio.h>
#include <conio.h>
#include <math.h>

int main()
{
int a, b, c;
float disc, root1, root2;
float img, real;
printf("ENTER VALUES FOR a,b,c:\n");
scanf("%d%d%d", &a, &b, &c);
disc = (float) b *b - 4 *a * c;
if (disc > 0)
{
printf("THE ROOTS ARE REAL &UNEQUAL:\n");
root1 = (-b + sqrt(disc)) / (2 *a);
root2 = (-b - sqrt(disc)) / (2 *a);
printf("Root1=%f\n", root1);
printf("Root2=%f\n", root2);
}
else if (disc == 0)
{
printf("THE ROOTS ARE REAL AND EQUAL:\n");
root1 = -b / (2 *a);
root2 = root1;
printf("Root1=%f\n", root1);
printf("Root2=%f\n", root2);
}
else
{
printf("THE ROOTS ARE IMAGINARY:\n");
disc = -disc;
img = (float) disc / 2 * a;
real = (float) - b / 2 * a;
if (img > 0)
{
printf("Root1=%f + i%f\n", real, img);
printf("Root2=%f - i%f\n", real, img);
}
else
{
img = -img;
printf("Root1=%f + i%f\n", real, img);
printf("Root2=%f - i%f\n", real, img);
}
}
return 0;
}
``````

INPUT:

``````ENTER VALUES FOR a,b,c
1 4 4
``````

OUTPUT:

``THE ROOTS ARE EQUAL AND THEY ARE.. Root1=-2 Root2=-2 ``

# Free Spring Boot Tutorial - 5 Hours Full Course

Watch this course on YouTube at Spring Boot Tutorial | Fee 5 Hours Full Course