# Find X and Y intercepts of a line passing through the given points

Given two points on a 2D plane, the task is to find the x – intercept and the y – intercept of a line passing through the given points.

Examples:

Input: points[][] = {{5, 2}, {2, 7}}
Output:
6.2
10.333333333333334

Input: points[][] = {{3, 2}, {2, 4}}
Output:
4.0
8.0

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:

• Find the slope using the given points.
• Put the value of the slope in the expression of the line i.e. y = mx + c.
• Now find the value of c using the values of any of the given points in the equation y = mx + c
• To find the x-intercept, put y = 0 in y = mx + c.
• To find the y-intercept, put x = 0 in y = mx + c.

Below is the implementation of the above approach:

## C++

 `// C++ implementation of the approach ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find the X and Y intercepts ` `// of the line passing through ` `// the given points ` `void` `getXandYintercept(``int` `P[], ``int` `Q[]) ` `{ ` `    ``int` `a = P[1] - Q[1]; ` `    ``int` `b = P[0] - Q[0]; ` ` `  `    ``// Slope of the line ` `    ``double` `m = a / (b * 1.0); ` `  `  `    ``// y = mx + c in where c is unknown ` `    ``// Use any of the given point to find c ` `    ``int` `x = P[0]; ` `    ``int` `y = P[1]; ` `    ``double` `c = y - m * x; ` ` `  `    ``// For finding the x-intercept put y = 0 ` `    ``y = 0; ` `    ``double` `r = (y - c) / (m * 1.0); ` `    ``cout << r << endl; ` ` `  `    ``// For finding the y-intercept put x = 0 ` `    ``x = 0; ` `    ``y = m * x + c; ` `    ``printf``(``"%.8f"``, c); ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `p1[] = {5, 2}; ` `    ``int` `p2[] = {2, 7}; ` `    ``getXandYintercept(p1, p2); ` `    ``return` `0; ` `} ` ` `  `// This code is contributed by Mohit Kumar `

## Java

 `// Java implementation of the approach ` `class` `GFG ` `{ ` `     `  `    ``// Function to find the X and Y intercepts  ` `    ``// of the line passing through  ` `    ``// the given points  ` `    ``static` `void` `getXandYintercept(``int` `P[],  ` `                                  ``int` `Q[])  ` `    ``{  ` `        ``int` `a = P[``1``] - Q[``1``];  ` `        ``int` `b = P[``0``] - Q[``0``];  ` `     `  `        ``// Slope of the line  ` `        ``double` `m = a / (b * ``1.0``);  ` `     `  `        ``// y = mx + c in where c is unknown  ` `        ``// Use any of the given point to find c  ` `        ``int` `x = P[``0``];  ` `        ``int` `y = P[``1``];  ` `        ``double` `c = y - m * x;  ` `     `  `        ``// For finding the x-intercept put y = 0  ` `        ``y = ``0``;  ` `        ``double` `r = (y - c) / (m * ``1.0``);  ` `        ``System.out.println(r);  ` `     `  `        ``// For finding the y-intercept put x = 0  ` `        ``x = ``0``;  ` `        ``y = (``int``)(m * x + c);  ` `        ``System.out.print(c);  ` `    ``}  ` `     `  `    ``// Driver code  ` `    ``public` `static` `void` `main (String[] args) ` `    ``{  ` `        ``int` `p1[] = {``5``, ``2``};  ` `        ``int` `p2[] = {``2``, ``7``};  ` `        ``getXandYintercept(p1, p2);  ` `    ``}  ` `} ` ` `  `// This code is contributed by kanugargng `

## Python3

 `# Python3 implementation of the approach ` ` `  `# Function to find the X and Y intercepts  ` `# of the line passing through  ` `# the given points ` `def` `getXandYintercept(P, Q): ` ` `  `    ``a ``=` `P[``1``] ``-` `Q[``1``]  ` `    ``b ``=` `P[``0``] ``-` `Q[``0``] ` `     `  `    ``# Slope of the line ` `    ``m ``=` `a ``/` `b ` `     `  `    ``# y = mx + c in where c is unknown  ` `    ``# Use any of the given point to find c ` `    ``x ``=` `P[``0``] ` `    ``y ``=` `P[``1``] ` `    ``c ``=` `y``-``m ``*` `x ` `     `  `    ``# For finding the x-intercept put y = 0 ` `    ``y ``=` `0` `    ``x ``=``(y``-``c)``/``m ` `    ``print``(x) ` `     `  `    ``# For finding the y-intercept put x = 0 ` `    ``x ``=` `0` `    ``y ``=` `m ``*` `x ``+` `c ` `    ``print``(y)  ` ` `  `# Driver code ` `p1 ``=` `[``5``, ``2``]  ` `p2 ``=` `[``2``, ``7``] ` `getXandYintercept(p1, p2) `

## C#

 `// C# implementation of the approach ` `using` `System; ` ` `  `class` `GFG ` `{ ` `     `  `    ``// Function to find the X and Y intercepts  ` `    ``// of the line passing through  ` `    ``// the given points  ` `    ``static` `void` `getXandYintercept(``int` `[]P,  ` `                                  ``int` `[]Q)  ` `    ``{  ` `        ``int` `a = P[1] - Q[1];  ` `        ``int` `b = P[0] - Q[0];  ` `     `  `        ``// Slope of the line  ` `        ``double` `m = a / (b * 1.0);  ` `     `  `        ``// y = mx + c in where c is unknown  ` `        ``// Use any of the given point to find c  ` `        ``int` `x = P[0];  ` `        ``int` `y = P[1];  ` `        ``double` `c = y - m * x;  ` `     `  `        ``// For finding the x-intercept put y = 0  ` `        ``y = 0;  ` `        ``double` `r = (y - c) / (m * 1.0);  ` `        ``Console.WriteLine(r);  ` `     `  `        ``// For finding the y-intercept put x = 0  ` `        ``x = 0;  ` `        ``y = (``int``)(m * x + c);  ` `        ``Console.WriteLine(c);  ` `    ``}  ` `     `  `    ``// Driver code  ` `    ``public` `static` `void` `Main () ` `    ``{  ` `        ``int` `[]p1 = {5, 2};  ` `        ``int` `[]p2 = {2, 7};  ` `        ``getXandYintercept(p1, p2);  ` `    ``} ` `} ` ` `  `// This code is contributed by AnkitRai01 `

Output:

```6.2
10.33333333333
```

Time Complexity: O(1)

My Personal Notes arrow_drop_up

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.