# Find if two given Quadratic equations have common roots or not

Given values **a1**, **b1** and **c1** of first Quadratic equations and values **a2**, **b2** and **c2** of second Quadratic equations , the task is to find whether both quadratic equations have common roots or not.**Examples:**

Input:a1 = 1, b1 = -5, c1 = 6, a2 = 2, b2 = -10, c2 = 12Output:YesExplanation:

Roots of both quadratic equations are (2, 3)Input:a1 = 1, b1 = -5, c1 = 6, a2 = 1, b2 = -9, c2 = 20Output:NoExplanation:

Roots of first quadratic equations are (2, 3), and Roots of second quadratic equations are (4, 5)

Therefore, both quadratic equations have different roots.

**Approach:**

Let the two quadratic equations are and

- Let us assume the given condition to be true, i.e. both the equations have common roots, say and

- As we know that

and

where a, b, c represents the quadratic equation

- Therefore,

For 1st quadratic equation:

Similarly, for 2nd quadratic equation:

- Now since both the roots are common,

Therfore, from above equations

- Also,

- Combining the above equations:

- which is the required
**condition for both roots to be common**of the two quadratic equations.

**Programs:**

## C++

`// C++ Program to Find if two given` `// Quadratic equations have` `// common roots or not` `#include <iostream>` `using` `namespace` `std;` `// function to check if 2 quadratic` `// equations have common roots or not.` `bool` `checkSolution(` `float` `a1, ` `float` `b1,` ` ` `float` `c1, ` `float` `a2,` ` ` `float` `b2, ` `float` `c2)` `{` ` ` `return` `(a1 / a2) == (b1 / b2)` ` ` `&& (b1 / b2) == (c1 / c2);` `}` `// Driver code` `int` `main()` `{` ` ` `float` `a1 = 1, b1 = -5, c1 = 6;` ` ` `float` `a2 = 2, b2 = -10, c2 = 12;` ` ` `if` `(checkSolution(a1, b1, c1, a2, b2, c2))` ` ` `cout << ` `"Yes"` `;` ` ` `else` ` ` `cout << ` `"No"` `;` ` ` `return` `0;` `}` |

## Java

`// Java Program to Find if two given` `// quadratic equations have common` `// roots or not` `class` `GFG {` ` ` `// Function to check if 2 quadratic` `// equations have common roots or not.` `static` `boolean` `checkSolution(` `float` `a1, ` `float` `b1,` ` ` `float` `c1, ` `float` `a2,` ` ` `float` `b2, ` `float` `c2)` `{` ` ` `return` `((a1 / a2) == (b1 / b2) &&` ` ` `(b1 / b2) == (c1 / c2));` `}` ` ` `// Driver code` `public` `static` `void` `main (String[] args)` `{` ` ` `float` `a1 = ` `1` `, b1 = -` `5` `, c1 = ` `6` `;` ` ` `float` `a2 = ` `2` `, b2 = -` `10` `, c2 = ` `12` `;` ` ` ` ` `if` `(checkSolution(a1, b1, c1, a2, b2, c2))` ` ` `System.out.println(` `"Yes"` `);` ` ` `else` ` ` `System.out.println(` `"No"` `);` `}` `}` `// This code is contributed by AnkitRai01` |

## Python3

`# Python3 program to find if two given` `# quadratic equations have common ` `# roots or not` `# Function to check if 2 quadratic` `# equations have common roots or not.` `def` `checkSolution(a1, b1, c1, a2, b2, c2):` ` ` ` ` `return` `((a1 ` `/` `a2) ` `=` `=` `(b1 ` `/` `b2) ` `and` ` ` `(b1 ` `/` `b2) ` `=` `=` `(c1 ` `/` `c2))` `# Driver code` `a1, b1, c1 ` `=` `1` `, ` `-` `5` `, ` `6` `a2, b2, c2 ` `=` `2` `, ` `-` `10` `, ` `12` `if` `(checkSolution(a1, b1, c1, a2, b2, c2)):` ` ` `print` `(` `"Yes"` `)` `else` `:` ` ` `print` `(` `"No"` `)` `# This code is contributed by divyamohan123` |

## C#

`// C# Program to Find if two given` `// quadratic equations have common` `// roots or not` `using` `System;` `class` `GFG{` ` ` `// Function to check if 2 quadratic` `// equations have common roots or not.` `static` `bool` `checkSolution(` `float` `a1, ` `float` `b1,` ` ` `float` `c1, ` `float` `a2,` ` ` `float` `b2, ` `float` `c2)` `{` ` ` `return` `((a1 / a2) == (b1 / b2) &&` ` ` `(b1 / b2) == (c1 / c2));` `}` ` ` `// Driver code` `public` `static` `void` `Main (` `string` `[] args)` `{` ` ` `float` `a1 = 1, b1 = -5, c1 = 6;` ` ` `float` `a2 = 2, b2 = -10, c2 = 12;` ` ` ` ` `if` `(checkSolution(a1, b1, c1, a2, b2, c2))` ` ` `Console.WriteLine(` `"Yes"` `);` ` ` `else` ` ` `Console.WriteLine(` `"No"` `);` `}` `}` `// This code is contributed by AnkitRai01` |

## Javascript

`<script>` `// Javascript Program to Find if two given` `// Quadratic equations have` `// common roots or not` `// function to check if 2 quadratic` `// equations have common roots or not.` `function` `checkSolution(a1, b1, c1, a2, b2, c2)` `{` ` ` `return` `(a1 / a2) == (b1 / b2)` ` ` `&& (b1 / b2) == (c1 / c2);` `}` `// Driver code` `a1 = 1, b1 = -5, c1 = 6;` `a2 = 2, b2 = -10, c2 = 12;` `if` `(checkSolution(a1, b1, c1, a2, b2, c2))` ` ` `document.write(` `"Yes"` `);` `else` ` ` `document.write(` `"No"` `);` `</script>` |

**Output:**

Yes

**Time Complexity: **O(1)

**Auxiliary Space: **O(1)

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend **live classes **with experts, please refer **DSA Live Classes for Working Professionals **and **Competitive Programming Live for Students**.