Form the Cubic equation from the given roots

15 Nov, 2021
Given the roots of a cubic equation A, B and C, the task is to form the Cubic equation from the given roots.Note: The given roots are integral.Examples:  
Input: A = 1, B = 2, C = 3 Output: x^3 – 6x^2 + 11x – 6 = 0 Explanation: Since 1, 2, and 3 are roots of the cubic equations, Then equation is given by: (x – 1)(x – 2)(x – 3) = 0 (x – 1)(x^2 – 5x + 6) = 0 x^3 – 5x^2 + 6x – x^2 + 5x – 6 = 0 x^3 – 6x^2 + 11x – 6 = 0.Input: A = 5, B = 2, C = 3 Output: x^3 – 10x^2 + 31x – 30 = 0 Explanation: Since 5, 2, and 3 are roots of the cubic equations, Then equation is given by: (x – 5)(x – 2)(x – 3) = 0 (x – 5)(x^2 – 5x + 6) = 0 x^3 – 5x^2 + 6x – 5x^2 + 25x – 30 = 0 x^3 – 10x^2 + 31x – 30 = 0.  
 
Approach: Let the root of the cubic equation (ax3 + bx2 + cx + d = 0) be A, B and C. Then the given cubic equation can be represents as:  
ax3 + bx2 + cx + d = x3 – (A + B + C)x2 + (AB + BC +CA)x + A*B*C = 0. Let X = (A + B + C) Y = (AB + BC +CA) Z = A*B*C  
Therefore using the above relation find the value of X, Y, and Z and form the required cubic equation.Below is the implementation of the above approach: 
C++
Java
Python3
C#
Javascript
// C++ program for the approach #include <bits/stdc++.h>using namespace std; // Function to find the cubic// equation whose roots are a, b and cvoid findEquation(int a, int b, int c){    // Find the value of coefficient    int X = (a + b + c);    int Y = (a * b) + (b * c) + (c * a);    int Z = a * b * c;     // Print the equation as per the    // above coefficients    cout << "x^3 - " << X << "x^2 + "         << Y << "x - " << Z << " = 0";} // Driver Codeint main(){    int a = 5, b = 2, c = 3;     // Function Call    findEquation(a, b, c);    return 0;}
// Java program for the approach class GFG{ // Function to find the cubic equation// whose roots are a, b and cstatic void findEquation(int a, int b, int c){    // Find the value of coefficient    int X = (a + b + c);    int Y = (a * b) + (b * c) + (c * a);    int Z = a * b * c;     // Print the equation as per the    // above coefficients    System.out.print("x^3 - " + X+ "x^2 + "                  + Y+ "x - " + Z+ " = 0");} // Driver Codepublic static void main(String[] args){    int a = 5, b = 2, c = 3;     // Function Call    findEquation(a, b, c);}} // This code contributed by PrinciRaj1992
# Python3 program for the approach # Function to find the cubic equation# whose roots are a, b and cdef findEquation(a, b, c):         # Find the value of coefficient    X = (a + b + c);    Y = (a * b) + (b * c) + (c * a);    Z = (a * b * c);     # Print the equation as per the    # above coefficients    print("x^3 - " , X ,          "x^2 + " ,Y ,          "x - " , Z , " = 0"); # Driver Codeif __name__ == '__main__':         a = 5;    b = 2;    c = 3;     # Function Call    findEquation(a, b, c); # This code is contributed by sapnasingh4991
// C# program for the approachusing System; class GFG{ // Function to find the cubic equation// whose roots are a, b and cstatic void findEquation(int a, int b, int c){         // Find the value of coefficient    int X = (a + b + c);    int Y = (a * b) + (b * c) + (c * a);    int Z = a * b * c;     // Print the equation as per the    // above coefficients    Console.Write("x^3 - " + X +                  "x^2 + " + Y +                    "x - " + Z + " = 0");} // Driver Codepublic static void Main(){    int a = 5, b = 2, c = 3;     // Function Call    findEquation(a, b, c);}} // This code is contributed by shivanisinghss2110
<script>     // Javascript program for the approach         // Function to find the cubic    // equation whose roots are a, b and c    function findEquation(a, b, c)    {        // Find the value of coefficient        let X = (a + b + c);        let Y = (a * b) + (b * c) + (c * a);        let Z = a * b * c;         // Print the equation as per the        // above coefficients        document.write("x^3 - " + X + "x^2 + "             + Y + "x - " + Z + " = 0");    }           let a = 5, b = 2, c = 3;       // Function Call    findEquation(a, b, c); </script>
x^3 - 10x^2 + 31x - 30 = 0
 
Time Complexity: O(1)
Auxiliary Space: O(1)
princiraj1992
shivanisinghss2110
sapnasingh4991
divyesh072019
souravmahato348
Algebra
root
Mathematical
Mathematical
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.