Given a midpoint of line(m1, m2) and one coordinate of a line (x1, y1), find the other end point(x2, y2) of a line.
Examples:
Input : x1 = –1, y1 = 2, and
m1 = 3, m2 = –6
Output : x2 = 7, y2 = 10
Input : x1 = 6.4, y1 = 3 and
m1 = –10.7, m2 = 4
Output : x2 = 3, y2 = 4
The Midpoint Formula: The midpoint of two points, (x1, y2) and (x2, y2) is the point M found by using:
M=((x1+x2)/2, (y1+y2)/2),
We have need of a (x2, y2) so we modifies the formula
m1 = ((x1+x2)/2), m2 = ((y1+y2)/2)
2*m1 = (x1+x2), 2*m2 = (y1+y2)
x2 = (2*m1 - x1), y2 = (2*m2 - y1)
C++
// CPP program to find the end point of a line #include <iostream> using namespace std; // CPP function to find the end point of a line void otherEndPoint(int x1, int y1, int m1, int m2) { // find end point for x coordinates float x2 = (float)(2 * m1 - x1); // find end point for y coordinates float y2 = (float)(2 * m2 - y1); cout << "x2 = " << x2 << ", " << "y2 = " << y2; } // Driven Program int main() { int x1 = -4, y1 = -1, m1 = 3, m2 = 5; otherEndPoint(x1, y1, m1, m2); return 0; } |
Java
// Java program to find the end point of a line class GFG { // Java function to find the end point // of a line static void otherEndPoint(int x1, int y1, int m1, int m2) { // find end point for x coordinates float x2 = (float)(2 * m1 - x1); // find end point for y coordinates float y2 = (float)(2 * m2 - y1); System.out.println("x2 = " + x2 + ", " + "y2 = " + y2); } // Driven Program public static void main(String args[]) { int x1 = -4, y1 = -1, m1 = 3, m2 = 5; otherEndPoint(x1, y1, m1, m2); } } // This code is contributed by JaideepPyne. |
Python3
# Python3 program to find the end # point of a line # function to find the end point # of a line def otherEndPoint(x1, y1, m1, m2): # find end point for x coordinates x2 = (2 * m1 - x1) # find end point for y coordinates y2 = (2 * m2 - y1) print ("x2 = {}, y2 = {}" . format(x2, y2)) # Driven Program x1 = -4y1 = -1m1 = 3m2 = 5otherEndPoint(x1, y1, m1, m2) # This code is contributed by # Manish Shaw (manishshaw1) |
C#
// C# program to find the // end point of a line using System; class GFG { // function to find the // end pointof a line static void otherEndPoint(int x1, int y1, int m1, int m2) { // find end point for x coordinates float x2 = (float)(2 * m1 - x1); // find end point for y coordinates float y2 = (float)(2 * m2 - y1); Console.WriteLine("x2 = " + x2 + ", " + "y2 = " + y2); } // Driver Program public static void Main(String []args) { int x1 = -4, y1 = -1, m1 = 3, m2 = 5; otherEndPoint(x1, y1, m1, m2); } } // This code is contributed by nitin mittal. |
PHP
<?php // php program to find the end point of a line // PHP function to find the end point of a line function otherEndPoint($x1, $y1, $m1, $m2) { // find end point for x coordinates $x2 = (2 * $m1 - $x1); // find end point for y coordinates $y2 = (2 * $m2 - $y1); echo "x2 = " . $x2 . ", y2 = " . $y2 ; } // Driven Program $x1 = -4; $y1 = -1; $m1 = 3; $m2 = 5; otherEndPoint($x1, $y1, $m1, $m2); // This code is contributed by nitin mittal. ?> |
Javascript
<script> // Javascript program to find the // end point of a line // Function to find // the end point of a line function otherEndPoint(x1, y1, m1, m2) { // Find end point for x coordinates let x2 = 2 * m1 - x1; // Find end point for y coordinates let y2 = 2 * m2 - y1; document.write("x2 = " + x2 + ", " + "y2 = " + y2); } // Driver code let x1 = -4, y1 = -1, m1 = 3, m2 = 5; otherEndPoint(x1, y1, m1, m2); // This code is contributed by jana_sayantan </script> |
x2 = 10, y2 = 11
Time Complexity:O(1)
Auxiliary Space:O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!


… [Trackback]
[…] Read More to that Topic: geeksforgeeks.org/find-the-other-end-point-of-a-line-with-given-one-end-and-mid/ […]