Dadas tres coordenadas cartesianas, la tarea es comprobar si se puede formar un triángulo rectángulo con las coordenadas dadas. Si es posible crear un triángulo rectángulo , escriba Sí . De lo contrario , imprima No.
Ejemplos:
Entrada: X1=0, Y1=5, X2=19, Y2=5, X3=0, Y3=0
Salida: Sí
Explicación:
La longitud de los puntos de conexión laterales (X1, Y1) y (X2, Y2) es 12.
Longitud de los puntos de conexión laterales (X2, Y2) y (X3, Y3) es 15. La
longitud de los puntos de conexión laterales (X1, Y1) y (X3, Y3) es 9.
12 2 + 9 2 = 15 2 .
Por lo tanto, se puede hacer un triángulo rectángulo.Entrada: X1=5, Y1=14, X2=6, Y2=13, X3=8, Y3=7
Salida: No
Planteamiento:
La idea es usar el Teorema de Pitágoras para verificar si un triángulo rectángulo es posible o no. Calcula la longitud de los tres lados del triángulo uniendo las coordenadas dadas. Sean los lados A, B y C. El triángulo dado es rectángulo si y sólo si A 2 + B 2 = C 2 . Escriba Sí si la condición se cumple. De lo contrario, imprima No.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to implement // the above approach #include <bits/stdc++.h> using namespace std; // Function to check if right-angled // triangle can be formed by the // given coordinates void checkRightAngled(int X1, int Y1, int X2, int Y2, int X3, int Y3) { // Calculate the sides int A = (int)pow((X2 - X1), 2) + (int)pow((Y2 - Y1), 2); int B = (int)pow((X3 - X2), 2) + (int)pow((Y3 - Y2), 2); int C = (int)pow((X3 - X1), 2) + (int)pow((Y3 - Y1), 2); // Check Pythagoras Formula if ((A > 0 and B > 0 and C > 0) and (A == (B + C) or B == (A + C) or C == (A + B))) cout << "Yes"; else cout << "No"; } // Driver Code int main() { int X1 = 0, Y1 = 2; int X2 = 0, Y2 = 14; int X3 = 9, Y3 = 2; checkRightAngled(X1, Y1, X2, Y2, X3, Y3); return 0; }
Java
// Java program for the above approach import java.util.*; class GFG{ // Function to check if right-angled // triangle can be formed by the // given coordinates static void checkRightAngled(int X1, int Y1, int X2, int Y2, int X3, int Y3) { // Calculate the sides int A = (int)Math.pow((X2 - X1), 2) + (int)Math.pow((Y2 - Y1), 2); int B = (int)Math.pow((X3 - X2), 2) + (int)Math.pow((Y3 - Y2), 2); int C = (int)Math.pow((X3 - X1), 2) + (int)Math.pow((Y3 - Y1), 2); // Check Pythagoras Formula if ((A > 0 && B > 0 && C > 0) && (A == (B + C) || B == (A + C) || C == (A + B))) System.out.println("Yes"); else System.out.println("No"); } // Driver Code public static void main(String s[]) { int X1 = 0, Y1 = 2; int X2 = 0, Y2 = 14; int X3 = 9, Y3 = 2; checkRightAngled(X1, Y1, X2, Y2, X3, Y3); } } // This code is contributed by rutvik_56
Python3
# Python3 program for the # above approach # Function to check if right-angled # triangle can be formed by the # given coordinates def checkRightAngled(X1, Y1, X2, Y2, X3, Y3): # Calculate the sides A = (int(pow((X2 - X1), 2)) + int(pow((Y2 - Y1), 2))) B = (int(pow((X3 - X2), 2)) + int(pow((Y3 - Y2), 2))) C = (int(pow((X3 - X1), 2)) + int(pow((Y3 - Y1), 2))) # Check Pythagoras Formula if ((A > 0 and B > 0 and C > 0) and (A == (B + C) or B == (A + C) or C == (A + B))): print("Yes") else: print("No") # Driver code if __name__=='__main__': X1 = 0; X2 = 0; X3 = 9; Y1 = 2; Y2 = 14; Y3 = 2; checkRightAngled(X1, Y1, X2, Y2, X3, Y3) # This code is contributed by virusbuddah_
C#
// C# program for the above approach using System; class GFG{ // Function to check if right-angled // triangle can be formed by the // given coordinates static void checkRightAngled(int X1, int Y1, int X2, int Y2, int X3, int Y3) { // Calculate the sides int A = (int)Math.Pow((X2 - X1), 2) + (int)Math.Pow((Y2 - Y1), 2); int B = (int)Math.Pow((X3 - X2), 2) + (int)Math.Pow((Y3 - Y2), 2); int C = (int)Math.Pow((X3 - X1), 2) + (int)Math.Pow((Y3 - Y1), 2); // Check Pythagoras Formula if ((A > 0 && B > 0 && C > 0) && (A == (B + C) || B == (A + C) || C == (A + B))) Console.WriteLine("Yes"); else Console.WriteLine("No"); } // Driver Code public static void Main(String []s) { int X1 = 0, Y1 = 2; int X2 = 0, Y2 = 14; int X3 = 9, Y3 = 2; checkRightAngled(X1, Y1, X2, Y2, X3, Y3); } } // This code is contributed by Rohit_ranjan
Javascript
<script> // JavaScript program to implement // the above approach // Function to check if right-angled // triangle can be formed by the // given coordinates function checkRightAngled (X1, Y1, X2, Y2, X3, Y3) { // Calculate the sides var A = Math.pow(X2 - X1, 2) + Math.pow(Y2 - Y1, 2); var B = Math.pow(X3 - X2, 2) + Math.pow(Y3 - Y2, 2); var C = Math.pow(X3 - X1, 2) + Math.pow(Y3 - Y1, 2); // Check Pythagoras Formula if ( A > 0 && B > 0 && C > 0 && (A === B + C || B === A + C || C === A + B) ) document.write("Yes"); else document.write("No"); } // Driver Code var X1 = 0, Y1 = 2; var X2 = 0, Y2 = 14; var X3 = 9, Y3 = 2; checkRightAngled(X1, Y1, X2, Y2, X3, Y3); </script>
Yes
Complejidad temporal: O(logN)
Espacio auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por thakurabhaysingh445 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA