Dados los números enteros A , B , C y D , que denotan la longitud de los lados de un cuadrilátero cíclico , la tarea es encontrar la longitud de las diagonales de un cuadrilátero cíclico.
Ejemplos:
Entrada: A = 10, B = 15, C = 20, D = 25
Salida: 22,06 26,07Entrada: A = 10, B = 30, C =50, D = 20
Salida: 37,93 29,0
Enfoque: La longitud de las diagonales se puede calcular usando las siguientes ecuaciones:
[Tex]Diagonal (q)=\sqrt{\frac{(ac+bd)(ab+cd)}{ad+bc}} [/Tex]
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 calculate the length of // diagonals of a cyclic quadrilateral vector<float> Diagonals(int a, int b, int c, int d) { vector<float> ans; ans.push_back(sqrt(((a * c) + (b * d)) * ((a * d) + (b * c)) / ((a * b) + (c * d)))); ans.push_back(sqrt(((a * c) + (b * d)) * ((a * b) + (c * d)) / ((a * d) + (b * c)))); return ans; } // Driver Code int main() { int A = 10; int B = 15; int C = 20; int D = 25; // Function Call vector<float> ans = Diagonals(A, B, C, D); // Print the final answer printf("%.2f %.2f", (ans[0]) + .01, ans[1] + .01); } // This code is contributed by Amit Katiyar
Java
// Java Program to implement // the above approach import java.util.*; class GFG{ // Function to calculate the length of // diagonals of a cyclic quadrilateral static Vector<Float> Diagonals(int a, int b, int c, int d) { Vector<Float> ans = new Vector<Float>(); ans.add((float) Math.sqrt(((a * c) + (b * d)) * ((a * d) + (b * c)) / ((a * b) + (c * d)))); ans.add((float) Math.sqrt(((a * c) + (b * d)) * ((a * b) + (c * d)) / ((a * d) + (b * c)))); return ans; } // Driver Code public static void main(String[] args) { int A = 10; int B = 15; int C = 20; int D = 25; // Function Call Vector<Float> ans = Diagonals(A, B, C, D); // Print the final answer System.out.printf("%.2f %.2f", (ans.get(0)) + .01, ans.get(1) + .01); } } // This code is contributed by 29AjayKumar
Python3
# Python3 program to implement # the above approach import math # Function to calculate the length of # diagonals of a cyclic quadrilateral def Diagonals(a, b, c, d): p = math.sqrt(((a * c)+(b * d))*((a * d)+(b * c)) / ((a * b)+(c * d))) q = math.sqrt(((a * c)+(b * d))*((a * b)+(c * d)) / ((a * d)+(b * c))) return [p, q] # Driver Code A = 10 B = 15 C = 20 D = 25 # Function Call ans = Diagonals(A, B, C, D) # Print the final answer print(round(ans[0], 2), round(ans[1], 2))
C#
// C# Program to implement // the above approach using System; using System.Collections.Generic; class GFG{ // Function to calculate the length of // diagonals of a cyclic quadrilateral static List<float> Diagonals(int a, int b, int c, int d) { List<float> ans = new List<float>(); ans.Add((float) Math.Sqrt(((a * c) + (b * d)) * ((a * d) + (b * c)) / ((a * b) + (c * d)))); ans.Add((float) Math.Sqrt(((a * c) + (b * d)) * ((a * b) + (c * d)) / ((a * d) + (b * c)))); return ans; } // Driver Code public static void Main(String[] args) { int A = 10; int B = 15; int C = 20; int D = 25; // Function Call List<float> ans = Diagonals(A, B, C, D); // Print the readonly answer Console.Write("{0:F2} {1:F2}", (ans[0]) + .01, ans[1] + .01); } } // This code is contributed by 29AjayKumar
Javascript
<script> // Javascript Program to implement // the above approach // Function to calculate the length of // diagonals of a cyclic quadrilateral function Diagonals(a, b, c, d) { var p = parseFloat( Math.sqrt(((a * c) + (b * d)) * ((a * d) + (b * c)) / ((a * b) + (c * d)))); var q = parseFloat( Math.sqrt(((a * c) + (b * d)) * ((a * b) + (c * d)) / ((a * d) + (b * c)))); return [p, q]; } // Driver Code var A = 10; var B = 15; var C = 20; var D = 25; // Function Call var ans = Diagonals(A, B, C, D) // Print the final answer document.write(ans[0].toFixed(2) + " ", ans[1].toFixed(2)); // This code is contributed by kirti </script>
Producción:
22.06 26.07
Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por divyamohan123 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA