Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Check if given two straight lines are identical or not

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

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




<?php
 
// PHP program to check if
// given two straight lines
// are identical or not
 
 
// Function to check if they are identical
function idstrt($a1, $b1,
            $c1, $a2,
            $b2, $c2)
{
    if (($a1 / $a2 == $b1 / $b2)
        && ($a1 / $a2 == $c1 / $c2)
        && ($b1 / $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; $b1 = 4;
    $c1 = 3; $a2 = -6;
    $b2 = 12; $c2 = 9;
    idstrt($a1, $b1, $c1, $a2, $b2, $c2);
 
    // This code is contributed by Ryuga
 
?>

Javascript




<script>
 
// javascript program to check if
// given two straight lines
// are identical or not
 
 
// Function to check if they are identical
function idstrt(a1 , b1,
                    c1 , a2,
                    b2 , c2)
{
    if ((a1 / a2 == b1 / b2)
        && (a1 / a2 == c1 / c2)
        && (b1 / b2 == c1 / c2))
        document.write( "The given straight"
        +" lines are identical");
 
    else
        document.write("The given straight"
            + " lines are not identical");
}
 
// Driver Code
  
 
var a1 = -2, b1 = 4,
        c1 = 3, a2 = -6,
        b2 = 12, c2 = 9;
idstrt(a1, b1, c1, a2, b2, c2);
 
// This code contributed by Princi Singh
 
</script>

Output: 

The given straight lines are identical

 

Time Complexity: O(1)

Auxiliary Space: O(1)


My Personal Notes arrow_drop_up
Last Updated : 25 Aug, 2022
Like Article
Save Article
Similar Reads
Related Tutorials