0 like 1 dislike
2.7k views

Write a program to find roots of a quadratic equation

quadratic equation is a second order equation having a single variable. Any quadratic equation can be represented as where a, b and c are constants ( a can't be 0) and x is unknown variable.

For Example

is a quadratic equation where a, b and c are 2, 5 and 3 respectively.

To calculate the roots of quadratic equation we can use below formula. There are two solutions of a quadratic equation.

``````x = (-b + sqrt(D))/(2*a)
x = (-b - sqrt(D))/(2*a)``````

where, D = (b*b-4*a*c) is Discriminant (判別式), which differentiate the nature of the roots of quadratic equation.

For the complex result (複數根):

``````realPart = -b/(2*a);
imaginaryPart =sqrt(-D)/(2*a);``````

Note: We have used `sqrt()` function to find square root which is in math.h library.

Example input 1:

``1 2 1``

Example output 1:

``````Roots of 1.00x^2 + 2.00x + 1.00 = 0 are real and same
x1 = x2 = -1.00``````

Example input 2:

``1 -3 2``

Example output 2:

``````Roots of 1.00x^2 + -3.00x + 2.00 = 0 are real and different
x1 = 2.00
x2 = 1.00``````

Example input 3:

``1 2 2``

Example output 3:

``````Roots of 1.00x^2 + 2.00x + 2.00 = 0 are complex and different
x1 = -1.00+1.00i
x2 = -1.00-1.00i``````
reopened | 2.7k views
0 0
We will continue this question in few days
0 0
Everything is fixed. Enjoy your time with The Judge :)
0 0
ANNNNNNNNNNNNNNNNNNNNNNNNNNGRYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
0 0
Your code has newline at the end sometime. You learned this lesson many times!
0 0
After i correct the newline in my code,there is still wrong output.However,I had run the program in Codeblocks.The output is still as well as the result. Seeking for help.
0 0
your output lack of 1 space at line 8 when print out "Roots of ...". Please be careful with all small details when working with online judge

0 like 0 dislike
`Hidden content!#include <stdio.h> * **  ****  *** ** * int main(){ * ****** *****    ***** **  * *    ** *  *   *  **     **** **      *      *  *** * **** * ***      %f  ** *  * ** *****     * *  *  ******   *  ** *  *  * ****** = (b*b-4*a*c);  * *  *****    *    ******   = (-b + sqrt(D))/(2*a);  **   **** *** **    ** ***   * = (-b - sqrt(D))/(2*a);*      * * ** ** * *    *** **   = -b/(2*a); * **   **     ** ** * ** * ** * * =sqrt(-D)/(2*a); *  * * * * * ** ** *    **** **   * **  *****   **  *  **  ***  ***     ****     **** ***      **  *    *  * * ** ** *  **** **** of %.2fx^2 + %.2fx + %.2f = 0 are real and ****  ***  * ***     *  * *  ** ***  **  ** *  *****   ***** * * * * **  ** ****** **** = %.2f\nx2 = %.2f",x1,x2);** **   *  ****   *  * *   * *   *  * ** *    *** ***   *  *   if(D==0)*       * * **** **   **  **  *   *  **** ** *****  * ***  ** *** ***  ****  ** **    *    * of %.2fx^2 + %.2fx + %.2f = 0 are real and same\n",a,b,c);**  * *   * * *** ***** * * * ** *     **  * *** **     * ***  = x2 = %.2f",x1);*** ***** *  *  *** * *  *  *   *   **    * *****      *** * *  ** ****  ***  *  **    ** *** *    *** *** ** ***   * *  **    * *  ***    **   * ** *    ***** of %.2fx^2 + %.2fx + %.2f = 0 are complex and  ** * *  ** *  ***     *     **** ******  *   * * * ** *  ** ***  * ** *  **     = ****    **** ***        * *** *  *  *    * **  * *** ****     ** ******* **  *  *  * ***  * ** ** *   *    = *  ** **   *   ** *  * **   ***   * **  **   *  * ** ** * * ** **  * * **   * ** ** ** ****  **** 0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output
0 like 0 dislike
`Hidden content!#include   *  * ****** * int main(){ *   **  * ****  *       **  ** n, i;** **     ** ***** *  ****** **** ***** *  &n); ** * **   ****  ***   ***    = 1; i <= n; ++i)*    *    *   *   * *    *  **  * ****   ***  *   ** *  *     **     * ** * ***  *  ** % i == 0)* *  ******   *   *  ***    *** *     ***   **     **   *   ** *** **  * ****  ** * ***   ", i);***    *    * ** *   * * *   *** *   ***    ** *  * * ** ** ** *  0;}`
0 0
Case 0: Wrong output
Case 1: Wrong output
Case 2: Wrong output
Case 3: Wrong output
0 like 0 dislike
`Hidden content!***    * *  ***   * * ** **    **     **  ** int main(){*  *** **  * ***     **** *** **     **     ****  *  **** *  * ***   ****** * *   *  **  ***   ****    *  * **** ** ** * ** * **  *    *       ***** =  ******    * *   ********  * *  * ** **  **** * ******  *     ***  ** * *     * ** **  ** * * * **   **  *** ** * **  * **** * *  *     ***  *  ****  = -b /(2*a);*** *** *   ** *  **  ** ***** **   ** **  *** *** **    **   ***    *   = (-b)/(2*a);   * * **** * *** *      **  * *  * *    * of %.2fx^2 + %.2fx + %.2f = 0 are complex and different\nx1 = %.2f+%.2fi\nx2 = ***     * ****  *  *  * *  *       *  * *   *   **  ** *** *     ** **  *    if(D==0) * ***  *     **     *** ** **   ** *  ****   *** * **** = (-b + ** **   * **    ****** * *******  *  = (-b -  ** *  ** **** **         ** * ***  *    * * *  of %.2fx^2 + %.2fx + %.2f = 0 are real and same\nx1 = x2 = **  **** ** *   ****** ***   * * *   **   * ****   **    **  **   *  * *   * if(D>0)    * *   * **  ** *   **   *   * **     * *  *  *******   *  = -b/(2*a); *     **  * ***  *****   * = (-b + **  *****  **   ***    * ** *  ***  *    * = (-b -   *** ** **    **    *  *  *** * ****** *   ** **  *** of %.2fx^2 + %.2fx + %.2f = 0 are real and different\nx1 = %.2f\nx2 = * ** * *   ** * ***  ***  ** ** *    *** * *  * * ** *       ** **    ****  **** 0;}`
edited
0 0
Case 0: Correct output
Case 1: Wrong output
Case 2: Wrong output
Case 3: Wrong output
0 0
Case 0: Correct output
Case 1: Wrong output
Case 2: Correct output
Case 3: Wrong output
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output
0 like 0 dislike
`Hidden content!#include **  **  * ** * * #include * ** * int main(){*        *** * ** * * *  *   *  a,b,c; * * **  * *  **  * ** * * *  **  *  **      *****    ** *    *  * *  ***** *** ***** * *  * ** *         * ***  ****  * *** **  **** *   **   * ** *    ****     * * *    *    **** ********* * ** *** * ***   *         ** *    ***  *  * **  of %.2fx^2 + %.2fx + %.2f = 0 are real and different\nx1 = %.2f\nx2 =  ***  *  *****  **  +  ***    ** *  **   -  **** *** *  **** * ** *   * *    * *  * ***  ** *  ** *      * *****  * **  ** **    *  ***  * **   if (b*b-4*a*c==0)**    ***  ***   *      *   ** *  * ** * *  * ****  **** *   * *** * ***     ** ** **  *   **    of %.2fx^2 + %.2fx + %.2f = 0 are real and same\nx1 = x2 =      * **  *  + ** ***  * **     * * ***     * *    *  * ******   **   *   *  * ***** **   *   * *  * * * **   ** ***  **  *  * *** * * * ** *     ** *   **  ** *****  *    ***** ** ** **    * *    *** * **** *   ** of %.2fx^2 + %.2fx + %.2f = 0 are complex and different\nx1 = %.2f+%.2fi\nx2 = *   ********  * * * **  *** ** ** ******** **   *  * ** *  *   *** *** ******  *** ** ****  *** *** * * ** *  **  **     ***  *** 0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output
0 like 0 dislike
`Hidden content!#include ** * **  **      #include ** * *     ** * int main(){*** *   * * ***** *  * *  ***  a,b,c;** ** *            ****   ** *****    * ** *   *     ** *****  *  * *** ** * ****  *    *** ** **   ** * ** *  ** ****   **  *** ****  * * * * *  *  *  ****  **** ** ******  *** * * *  * ***  ***  ***** ** *    * ** ***  ***    * of %.2fx^2 + %.2fx + %.2f = 0 are real and different\nx1 = %.2f\nx2 = *  *  **  **   + *  * **** *** *** - * **** ******* * * *  *  ****  *** *** *   *  **   *** ** ***  * * * ** * *  * ****       *  * * * *  **** if (b*b-4*a*c==0)  * ** ** *  **    ** * *   * * *** ****   * * * **   **  ** * * ** ** **  *   ***  ******** * of %.2fx^2 + %.2fx + %.2f = 0 are real and same\nx1 = x2 =  * * * ***  * **  +       *   ******* ** * * * **   **  *     *        **  ** *  * ** *   *   *  *  **  *    *   **  * *     ****** ***** ** * ** *  *  *** * * ** **  ** ** *   **   ** *  ** *    ** **   ** of %.2fx^2 + %.2fx + %.2f = 0 are complex and different\nx1 = %.2f+%.2fi\nx2=   ********      *   * *     **  * * *** ** *  **    * ***      * * *** **  **    ***    *  * *   *  **** * **** * **  ** * 0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Wrong output
Case 3: Correct output
0 like 0 dislike
`Hidden content!#include <stdio.h>#include <stdlib.h>#include <math.h>int main(){ ****  ****   ***  *  * *  *  ** a,b,c,d,x1,x2;* * *  **** *  ** * ***     * **  * **  **      *     **  ** *** * * *  * *      ** *   *  *  **   *   **  * *  * **     *  *   **** *   *** **  * **   ***  *  *** * ***    *  *    *      * **** ****** *    ** *  *  *  ***  ** * **    **    **  * ** ******  *  * *  *** *** *  * **  * * *  **  ** *  ** ***  of %.2fx^2 + %.2fx + %.2f = 0 are real and  *    *  * **  ***** * * ***** ***** *   *  **  * ***** ** **        ***** * *  *  ** = %.2f\n",x1);  **   ** * *****  *   * ***  ** *   ******** * * * *  * *** = %.2f",x2);   ** *   *  **  * ** **     * ************* ****  **   if(d==0)   ** **  * **   * * * *  * * * *** * **  *  *   *  **  ** ** * * *** * *****     * * ** ****  of %.2fx^2 + %.2fx + %.2f = 0 are real and same\n",a,b,c);   * ** * ** * ** ****   * *     *  ****   * ****  *      *** **  *  *  = x2 = %.2f",x1);*    *  * **  *  **  **** *  ****         ** ** ** ***    *   ** * * *****     ** * *** **         **    * * *  ** * **    ***  ***** *  *** ***  * * *  ** of %.2fx^2 + %.2fx + %.2f = 0 are complex and   ***** **   *     **  * *  ** * **  ***  * **  * *   *  **** * * *   ***      * * =  *   * *  **  *      *   * *  *     * *     *** **** *** ***  ***  *** *  *    **   **  *** *  ** *  = ***      * *   * **** **  **** ****  ******   ***  **     ****      * ** *  *    0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output
0 like 0 dislike
`Hidden content!int a, b, c, D, spD, x1, x2; *     ** *   ***   **   * **  **  *  * *    *** * *  **** * * *  *  ** ** * aX^2 + bX + c = 0\n以a b c表示\n");    while(scanf("%d %d %d", &a, &b ,&c)==3){*** * *     **   *  *    *  **  * *** *******   ** **  - (4*a*c);**  *** * * ***   **     **** **  **  * **  * ******* * *  ***  *   * *** * ***** * *****     *  * * * * *** **** *** * *  ***       **  ***   ****  ** * *  * ****  ** ****  *  **  * *****  *  *  *******  ** * * ***   ***   * * (-b+spD)/(2*a); **   **** * * * ** *    **   ***   *   ** **   ******* ** *  *   *    ***  (-b-spD)/(2*a);**   ** * ** * * **     *   * **    ** ** *****  ** * ** **   ** *   **** ** * *** (x1==x2){****** * ******   *      * ***   * *  ***** *   * * ****    *   **  * ****  *   **    *  * *** *** **  *  **  * *         * **  ** * * ***  **     *** X=%d\n", x1);** * * * *  *  **  ****** **  **  *   *    ** *    **  *      * **  *   *** *    *    **   ***        **   *** *   *   * * *** * ***  * ***   * *  **    *****  ***   {  ***        **    *  *** *  *****   ****   **** *     * * *   ***   **  ** **    **    ***  ** **  **  **  ** **  *   *   * *  * *** **********  *** *     *** X=%d或%d\n", x1, x2);** *     * *** *  ****  *** * *    *  *  *  **  *    ******** * **    ******* **  **         }  *     ***  *** * * * *****   ** * *** ** ** * ** * *   *** if(D==0){* **********  **     * ** *   * *** * *  ** *  ** **** * **   *   * *  *    (-b)/(2*a); **   * *   * ** * ** **  ******  ***    *** *** * *  *  **      *  **  *   ***  * *   **  **** * **  ***  * ****** ** *** *   **  ** ****   ******  * *     *  * **       *  *  **** * *    *****      * ** *   X=0");    ** *   **     ***   * **    *   **    ** * *******  * *  *****  *** **   *    ******* **   *   * * ** *  * *** * * * ****     **   ***     *  * *   * *   ****  * * *  *  * * **  *  *** **  *  *  ***** *  ***** **   ****** *  * ******* **  ***  **  * * * **  **** **   *  *  *    X=%d\n", x1); *   ****   * **** *  **   * *       ***    *  *****  *****    ***   ** *** * ****        } ***  *  ***    **  ****  *        * **  ** *  *   *     ******  * *   * ** * **  ***  *   ***  *  ** *  * ***  *   ****  ** **  ** ****** ***  *    *  * ** ** *   **  ****  * *   * * *  * **** **    *** *  **** *    *******  *       }*   *     *    *     ****    ** *  *  *  *   * ***   ** * * *****    system("PAUSE");    return 0;}`
0 0
prog.c:2:12: error: expected declaration specifiers or '...' before string constant
printf("\xe8\xab\x8b\xe8\xbc\xb8\xe5\x85\xa5\xe4\xb8\x80\xe5\x85\x83\xe4\xba\x8c\xe6\xac\xa1\xe6\x96\xb9\xe7\xa8\x8b\xe5\xbc\x8f\xe7\x9a\x84\xe4\xb8\x89\xe5\x80\x8b\xe4\xbf\x82\xe6\x95\xb8\xef\xbc\x8c\xe5\xa6\x82 aX^2 + bX + c = 0\n\xe4\xbb\xa5a b c\xe8\xa1\xa8\xe7\xa4\xba\n");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prog.c:3:5: error: expected identifier or '(' before 'while'
while(scanf("%d %d %d", &a, &b ,&c)==3){
^~~~~
prog.c:29:12: error: expected declaration specifiers or '...' before string constant
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
prog.c:30:12: error: expected declaration specifiers or '...' before string constant
system("PAUSE");
^~~~~~~
prog.c:31:5: error: expected identifier or '(' before 'return'
return 0;
^~~~~~
prog.c:32:1: error: expected identifier or '(' before '}' token
}
^
0 like 0 dislike
`Hidden content!#include <math.h>#include <stdio.h>#include <stdlib.h>int main (){     ***  *  * **** * *****  * a,b,c,D;  **  **  * *  * *   **   x1,x2; * * * *** ***    * * ** *  *  *        *  %d   ****   **     *   *****     ***  *  *** * * *  **** * ***   *  ********    ****** *  **  *   ***** **  ** ** * ***  *  **  *    **     * ** *  * *   ****  *     *  *  **** *** * * ***  **  ** A,B,C; *  ** * ******  ** ********* **   ** *** ***** **** * **   * *   * *    *** *  ** *  * **** *  *******    ***   *     **  ** * *  ** *  ** of %.2fx^2 + %.2fx + %.2f = 0  are real and  *    ****   **  * * **     *  *  * ****** **** **   ***  **  ***  * * **** *  **   **  * **  *  ***  = %.2f\n",x1); * *     *  ** **   * ***  *         *** *           * * *** **  *       ** = %.2f",x2);}  *** **  **   *    if(D==0)** * **** *  ** *** * ** **  *   ** ** ** *********** ** **  * of %.2fx^2 + %.2fx + %.2f = 0 are real and same\n",A,B,C);** * * *      * * * *  *** ******      *****      **** * * *     ***   ***  = x2 = %.2f",x1);}* **  *** **   *  **** **  * if(D<0)  ** *** ***  *  ** ** **** * *** *  ***    ***    *   *   *  ** * of %.2fx^2 + %.2fx + %.2f = 0  are complex and    ** * ** *** *** * *  ******  ** * **  * *   *  *****  ***    **** **** ***    *     bb,d,dd;** *    * * *   * *** *** ****** * * ** *   * **    *   *** *  **  *     **  *  *   * *  *  *    **  ****** *  ** ** *  **   **  ** *   ** ** ***   *  **   *    ** * ***  *  **  * **** *** *** ***   *    ***  * *** ** * ** *   = ************** *  * *   **** **** ** *   * *      **   * **    *  * ** ** * ** **      =   * *** *   *  *    *  *  * **  ** * * * * * * *     0;}`
0 0
Case 0: Correct output
Case 1: Wrong output
Case 2: Wrong output
Case 3: Wrong output
0 0
Case 0: Correct output
Case 1: Wrong output
Case 2: Wrong output
Case 3: Wrong output
0 like 0 dislike
`Hidden content!#include <stdio.h>  ****  **   ***   **int main(){**  * ** * * *** *** **           ***   *** * *  *****    *     ** *** *  * ** *   *  **   %f * ***** *  **** * * ********           *** *  * *       = (b*b-4*a*c);* * *   **   **** *** **  = (-b + sqrt(D))/(2*a);**   **   **  * **** = (-b - sqrt(D))/(2*a);*  * ****   *  *   *   * ***  ** = -b/(2*a);****   * * *  * * *   *   **  **** *  =sqrt(-D)/(2*a); *   *** ** *** * *  *      * ****   ** ** *    **  * ****  * *  * *  * * * * * **  *      * ***  *  **  * *   * ** *****   ** ** *  of %.2fx^2 + %.2fx + %.2f = 0 are real and * * * *   ** **  *** *****   * *   * *   * **** ***** *** * * *** **** **     **** * = %.2f\nx2 = %.2f",x1,x2);   * * ***    * ** ****   *    **** *** *      ** * * * **   if(D==0)*      **** *** * * * *** ****        ** *       **    ***    *  **  ***** * ***  ****** *  **** **     of %.2fx^2 + %.2fx + %.2f = 0 are real and same\n",a,b,c);* *** ********  ** **** * *          *  *  *    ****** * *  ** **  = x2 = %.2f",x1);* *    ****     **    *  **  * *   ****    ***   *  * * **  * *  ***    * **** * * ***   ** *   * *** *   *  ** ** *  *   ** *    *    **     *  * * *  of %.2fx^2 + %.2fx + %.2f = 0 are complex and **  * * * * * **** ** **   **  *  ***** ***   ***   **  **** ** *** *   *    **    **** * * = **    *** * **     ** *    * **  ***   ** *      ** *  *   *   * ** * **  **  *  *  **       **   * = * * ** *   *** * **  ** ****   *    ** * *** *  *** **** * *  *  * ****   ****    0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output
0 like 0 dislike
`Hidden content!#include <stdio.h>** ******* *  *   * int main(){**   **  *  **     ***  * *  **** * **   * *  *     * *****  * ** *   * ** *      ** * ** *** ** %f       *    * ** * ***    ****    *     ** **   * *  *** ** = (b*b-4*a*c);* * * * *  **  *     ** ***   = (-b + sqrt(D))/(2*a);*******  *   ***  **   ** * * * = (-b - sqrt(D))/(2*a); ** **  * **      *    **  *     = -b/(2*a); ****   *** ** ****** * * *    *  =sqrt(-D)/(2*a);***   **   *    *** * *** **   *   *  *  ** * *    ** *    * ** * **   ****** **** * **   * **  **   **  *** * ** ****     of %.2fx^2 + %.2fx + %.2f = 0 are real and    * *** ****      * * ** * *  * ** * * **   **  * * **    * * **  ** **   **  ** *  = %.2f\nx2 = %.2f",x1,x2); *  ** ***   ** *  *  *   **** *    * ****   * *  * *    *** * if(D==0) *** * ** **  ****** ** *   ** *  **   ***** * *    ******      **** *        *  *  *******   of %.2fx^2 + %.2fx + %.2f = 0 are real and same\n",a,b,c); *** *       *   *   **   * * ****    **** *  ********  *    * *  = x2 = %.2f",x1); ** **   * * *  *  *  ***  * ***  *  ***    ******  *     *   *     **   * *  ** **  *   *  * ******** **   * *  ****  **  ***** * * **  * ** *** *   *   ***    * ****   * of %.2fx^2 + %.2fx + %.2f = 0 are complex and *       *         *    * * * ********  *      ***** *        ****   * * ** ***   ** * =     *   *     ***     ****  * **  * ***   ** **   ** ***  *  *   *   *** * * ***  * ** * *    *     *   ** = * * *  ** *** **     *******       ** *******  ******** * ***  ****** ** **  * **** *    0;}`
0 0
Case 0: Correct output
Case 1: Correct output
Case 2: Correct output
Case 3: Correct output