Encuentre las coordenadas del otro extremo del diámetro en un círculo

Dadas las coordenadas del centro (c1, c2) y una coordenada (x1, y1) del diámetro de un círculo, encuentre el otro punto de coordenadas del extremo (x2, y2) del diámetro. 
 

Ejemplos: 

Input  : x1 = –1, y1 = 2, and c1 = 3, c2 = –6
Output : x2 = 7, y2 = -14

Input  : x1 = 6.4, y1 = 3 and c1 = –10.7, c2 = 4
Output : x2 = -27.8, y2 = 5

La fórmula del punto medio: 
el punto medio de dos puntos de coordenadas extremos, (x1, y2) y (x2, y2) es el punto M que se puede encontrar usando:
M = \frac{x_{1} + x_{2}}{2}, \ \ \frac{y_{1} + y_{2}}{2}

Necesitamos las coordenadas (x2, y2), por lo que aplicamos al punto medio la fórmula  

          c1 = ((x1+x2)/2),  c2 = ((y1+y2)/2)
          2*c1 = (x1+x2),  2*c2 = (y1+y2)
          x2 = (2*c1 - x1),  y2 = (2*c2 - y1)

C++

// CPP program to find the
// other-end point of diameter
#include <iostream>
using namespace std;
 
// function to find the
// other-end point of diameter
void endPointOfDiameterofCircle(int x1,
                    int y1, int c1, int c2)
{
    // find end point for x coordinates
    cout << "x2 = "
            << (float)(2 * c1 - x1)<< "  ";
     
    // find end point for y coordinates
    cout << "y2 = " << (float)(2 * c2 - y1);
     
}
// Driven Program
int main()
{
    int x1 = -4, y1 = -1;
    int c1 = 3, c2 = 5;
     
    endPointOfDiameterofCircle(x1, y1, c1, c2);
     
    return 0;
}

Java

// Java program to find the other-end point of
// diameter
import java.io.*;
 
class GFG {
     
    // function to find the other-end point of
    // diameter
    static void endPointOfDiameterofCircle(int x1,
                        int y1, int c1, int c2)
    {
         
        // find end point for x coordinates
        System.out.print( "x2 = "
                            + (2 * c1 - x1) + " ");
         
        // find end point for y coordinates
        System.out.print("y2 = " + (2 * c2 - y1));
    }
     
    // Driven Program
    public static void main (String[] args)
    {
        int x1 = -4, y1 = -1;
        int c1 = 3, c2 = 5;
         
        endPointOfDiameterofCircle(x1, y1, c1, c2);
    }
}
 
// This code is contributed by anuj_67.

Python3

# Python3 program to find the
# other-end point of diameter
 
# function to find the
# other-end point of diameter
def endPointOfDiameterofCircle(x1, y1, c1, c2):
 
    # find end point for x coordinates
    print("x2 =", (2 * c1 - x1), end=" ")
     
    # find end point for y coordinates
    print("y2 =" , (2 * c2 - y1))
     
# Driven Program
x1 = -4
y1 = -1
c1 = 3
c2 = 5
     
endPointOfDiameterofCircle(x1, y1, c1, c2)
     
# This code is contributed by Smitha.

C#

// C# program to find the other -
// end point of diameter
using System;
class GFG {
     
    // function to find the other - end
    // point of  diameter
    static void endPointOfDiameterofCircle(int x1,
                                           int y1,
                                           int c1,
                                           int c2)
    {
        // find end point for x coordinates
        Console.Write("x2 = "+ (2 * c1 - x1) + " ");
         
        // find end point for y coordinates
        Console.Write("y2 = " + (2 * c2 - y1));
    }
     
    // Driver Code
    public static void Main ()
    {
        int x1 = -4, y1 = -1;
        int c1 = 3, c2 = 5;
         
        endPointOfDiameterofCircle(x1, y1, c1, c2);
    }
}
 
// This code is contributed by anuj_67.

PHP

<?php
// PHP program to find the
// other-end point of diameter
 
// function to find the
// other-end point of diameter
function endPointOfDiameterofCircle($x1,
                          $y1, $c1, $c2)
{
    // find end point for x coordinates
    echo "x2 = ",(2 * $c1 - $x1)," ";
     
    // find end point for y coordinates
    echo "y2 = " , (2 * $c2 - $y1);
}
 
// Driven Program
$x1 = -4;
$y1 = -1;
$c1 = 3;
$c2 = 5;
     
endPointOfDiameterofCircle($x1, $y1,
                          $c1, $c2);
 
// This code is contributed by Smitha
?>

Javascript

<script>
 
// Javascript program to find the
// other-end point of diameter
 
// Function to find the
// other-end point of diameter
function endPointOfDiameterofCircle(x1, y1, c1, c2)
{
     
    // Find end point for x coordinates
    document.write("x2 = " + (2 * c1 - x1) + "  ");
     
    // Find end point for y coordinates
    document.write("y2 = " + (2 * c2 - y1));
     
}
 
// Driver code
let x1 = -4, y1 = -1;
let c1 = 3, c2 = 5;
 
endPointOfDiameterofCircle(x1, y1, c1, c2);
 
// This code is contributed by jana_sayantan   
     
</script>

Producción 

x2 = 10 y2 = 11

De manera similar, si damos un centro (c1, c2) y otra coordenada final (x2, y2) de un diámetro y encontramos unas coordenadas (x1, y1) 
 

 Proof for (x1, y1) :
          c1 = ((x1+x2)/2),  c2 = ((y1+y2)/2)
          2*c1 = (x1+x2),  2*c2 = (y1+y2)
          x1 = (2*c1 - x2),  y1 = (2*c2 - y2)

Entonces, las coordenadas del otro extremo (x1, y1) de un diámetro son 
 

         x1 = (2*c1 - x2),  y1 = (2*c2 - y2)

Publicación traducida automáticamente

Artículo escrito por jaingyayak y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *