Check if given two straight lines are identical or not (original) (raw)

Last Updated : 25 Aug, 2022

Given two straight lines with co-efficients of their equations a1x + b1y + c1 = 0 and a2x + b2y + c2 = 0 respectively, the task is to check if the straight lines are identical or not.
Examples:

Input: a1 = -2, b1 = 4, c1 = 3, a2 = -6, b2 = 12, c2 = 9
Output: The given straight lines are identical
Input: a1 = 12, b1 = 3, c1 = 8, a2 = 7, b2 = -12, c2 = 0
Output: The given straight lines are not identical

Approach:

  1. Given equations,
    a1x + b1y + c1 = 0
    a2x + b2y + c2 = 0
  2. converting them to slope intercept form, we get
    y = (-a1/b1)x +(-c1/b1)
    y = (-a2/b2)x +(-c2/b2)
  3. now, if the lines are identical then there slope and intercepts must be equal,
    so,
    -a1/b1 = -a2/b2
    or, a1/a2 = b1/b2
    also,
    -c1/b1 = -c2/b2
    so, c1/c2 = b1/b2
  4. So, if two given straight lines are identical then there co-efficients should be proportional.
    \frac{a_{1}}{a_{2}} = \frac{b_{1}}{b_{2}} = \frac{c_{1}}{c_{2}}

Below is the implementation of the above approach

C++ `

// C++ program to check if // given two straight lines // are identical or not

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

// Function to check if they are identical void idstrt(double a1, double b1, double c1, double a2, double b2, double c2) { if ((a1 / a2 == b1 / b2) && (a1 / a2 == c1 / c2) && (b1 / b2 == c1 / c2)) cout << "The given straight" << " lines are identical" << endl;

else
    cout << "The given straight"
         << " lines are not identical"
         << endl;

}

// Driver Code int main() { double a1 = -2, b1 = 4, c1 = 3, a2 = -6, b2 = 12, c2 = 9; idstrt(a1, b1, c1, a2, b2, c2); return 0; }

Java

// Java program to check if // given two straight lines // are identical or not class GFG {

// Function to check if they are identical static void idstrt(double a1, double b1, double c1, double a2, double b2, double c2) { if ((a1 / a2 == b1 / b2) && (a1 / a2 == c1 / c2) && (b1 / b2 == c1 / c2)) System.out.println( "The given straight" +" lines are identical");

else
    System.out.println("The given straight"
        + " lines are not identical");

}

// Driver Code public static void main(String[] args) { double a1 = -2, b1 = 4, c1 = 3, a2 = -6, b2 = 12, c2 = 9; idstrt(a1, b1, c1, a2, b2, c2); } }

// This code has been contributed by 29AjayKumar

Python3

Python3 program to check if

given two straight lines

are identical or not

Function to check if they are identical

def idstrt(a1, b1, c1, a2, b2, c2): if ((a1 // a2 == b1 // b2) and (a1 // a2 == c1 // c2) and (b1 // b2 == c1 // c2)): print("The given straight lines", "are identical"); else: print("The given straight lines", "are not identical");

Driver Code

a1, b1 = -2, 4 c1, a2 = 3,-6 b2, c2 = 12,9 idstrt(a1, b1, c1, a2, b2, c2)

This code is contributed

by mohit kumar

C#

// C# program to check if // given two straight lines // are identical or not using System;

class GFG {

// Function to check if they are identical static void idstrt(double a1, double b1, double c1, double a2, double b2, double c2) { if ((a1 / a2 == b1 / b2) && (a1 / a2 == c1 / c2) && (b1 / b2 == c1 / c2)) Console.WriteLine( "The given straight" +" lines are identical");

else
    Console.WriteLine("The given straight"
        + " lines are not identical"); 

}

// Driver Code public static void Main(String[] args) { double a1 = -2, b1 = 4, c1 = 3, a2 = -6, b2 = 12, c2 = 9; idstrt(a1, b1, c1, a2, b2, c2); } }

// This code contributed by Rajput-Ji

PHP

c1,c1, c1,a2, b2,b2, b2,c2) { if (($a1 / a2==a2 == a2==b1 / $b2) && ($a1 / a2==a2 == a2==c1 / $c2) && ($b1 / b2==b2 == b2==c1 / $c2)) echo "The given straight lines are identical","\n"; else echo "The given straight lines are not identical","\n"; } // Driver Code a1=−2;a1 = -2; a1=2;b1 = 4; c1=3;c1 = 3; c1=3;a2 = -6; b2=12;b2 = 12; b2=12;c2 = 9; idstrt($a1, b1,b1, b1,c1, a2,a2, a2,b2, $c2); // This code is contributed by Ryuga ?>

JavaScript

`

Output:

The given straight lines are identical

Time Complexity: O(1)

Auxiliary Space: O(1)