Quadratic equation whose roots are reciprocal to the roots of given equation

Last Updated : 22 Apr, 2021

Given three integers A, B, and C representing the coefficients of a quadratic equation Ax2 + Bx + C = 0, the task is to find the quadratic equation whose roots are reciprocal to the roots of the given equation.

Examples:

Input: A = 1, B = -5, C = 6 
Output: (6)x^2 +(-5)x + (1) = 0
Explanation: 
The given quadratic equation x2 - 5x + 6 = 0.
Roots of the above equation are 2, 3.
Reciprocal of these roots are 1/2, 1/3.
Therefore, the quadratic equation with these reciprocal roots is 6x2 - 5x + 1 = 0.

Input: A = 1, B = -7, C = 12
Output: (12)x^2 +(-7)x + (1) = 0

Approach: The idea is to use the concept of quadratic roots to solve the problem. Follow the steps below to solve the problem:

  • Consider the roots of the equation Ax2 + Bx + C = 0 to be p, q.
  • The product of the roots of the above equation is given by p * q = C / A.
  • The sum of the roots of the above equation is given by p + q = -B / A.
  • Therefore, the reciprocals of the roots are 1/p, 1/q.
  • The product of these reciprocal roots is 1/p * 1/q = A / C.
  • The sum of these reciprocal roots is 1/p + 1/q = -B / C.
  • If the sum and product of roots is known, the quadratic equation can be x2 – (Sum of the roots)x + (Product of the roots) = 0.
  • On solving the above equation, quadratic equation becomes Cx2 + Bx + A = 0.

Below is the implementation of the above approach: 

C++
// C++ program for the above approach

#include <bits/stdc++.h>
using namespace std;

// Function to find the quadratic
// equation having reciprocal roots
void findEquation(int A, int B, int C)
{
    // Print quadratic equation
    cout << "(" << C << ")"
         << "x^2 +(" << B << ")x + ("
         << A << ") = 0";
}

// Driver Code
int main()
{
    // Given coefficients
    int A = 1, B = -5, C = 6;

    // Function call to find the quadratic
    // equation having reciprocal roots
    findEquation(A, B, C);

    return 0;
}
Java
// Java program for the above approach
class GFG{
 
// Function to find the quadratic
// equation having reciprocal roots
static void findEquation(int A, int B, int C)
{
    
    // Print quadratic equation
    System.out.print("(" + C + ")" +  
                "x^2 +(" + B + ")x + (" +
                           A + ") = 0");
}

// Driver Code
public static void main(String args[])
{
    
    // Given coefficients
    int A = 1, B = -5, C = 6;

    // Function call to find the quadratic
    // equation having reciprocal roots
    findEquation(A, B, C);
}
}

// This code is contributed by AnkThon
Python3
# Python3 program for the above approach

# Function to find the quadratic
# equation having reciprocal roots
def findEquation(A, B, C):
    
    # Print quadratic equation
    print("(" + str(C)  + ")" + 
     "x^2 +(" + str(B) + ")x + (" + 
                str(A) + ") = 0")

# Driver Code
if __name__ == "__main__":
    
    # Given coefficients
    A = 1 
    B = -5
    C = 6

    # Function call to find the quadratic
    # equation having reciprocal roots
    findEquation(A, B, C)

# This code is contributed by AnkThon
C#
// C# program for the above approach
using System;
using System.Collections.Generic;

class GFG{
 
// Function to find the quadratic
// equation having reciprocal roots
static void findEquation(int A, int B, int C)
{
    // Print quadratic equation
    Console.Write("(" + C + ")" +  
             "x^2 +(" + B + ")x + (" +
                        A + ") = 0");
}

// Driver Code
public static void Main()
{
    
    // Given coefficients
    int A = 1, B = -5, C = 6;

    // Function call to find the quadratic
    // equation having reciprocal roots
    findEquation(A, B, C);
}
}

// This code is contributed by bgangwar59
JavaScript
<script>

        // Javascript program for the above approach

        // Function to find the quadratic
        // equation having reciprocal roots
        function findEquation(A, B, C) 
        {
            // Print quadratic equation
            document.write("(" + C + ")" +
                "x^2 +(" + B +
                ")x + (" + A + ") = 0")

        }

        // Driver Code

        // Given coefficients
        let A = 1, B = -5, C = 6;

        // Function call to find the quadratic
        // equation having reciprocal roots
        findEquation(A, B, C);

        // This code is contributed by Hritik
        
    </script>

Output: 
(6)x^2 +(-5)x + (1) = 0

 

Time Complexity: O(1)
Auxiliary Space: O(1)


 

Comment