Horje
Circumradius of a Cyclic Quadrilateral using the length of Sides

Given integers A, B, C, and D denoting the length of sides of a Cyclic Quadrilateral, the task is to find the circumradius i.e., the radius of circumcircle of the given cyclic quadrilateral.

Examples:

Input: A = 3, B = 4, C = 5, D= 6
Output: 3.29

Input: A = 10, B = 30, C = 50, D = 20
Output: 27.78

Approach: Follow the steps below to solve the problem:

  • Calculate the semiperimeter of the cyclic quadrilateral with sides A, B, C and D by using the equation:

[Tex]Semiperimeter(s)=\frac{a+b+c+d}{2}[/Tex]

[Tex]R = \frac{1}{4}\sqrt{\frac{(ab+cd)(ac+bd)(ad+bc)}{(s-a)(s-b)(s-c)(s-d)}}  [/Tex]

AreaofRhombus-(1)-copy



Below is the implementation of the above approach:

C++14

// C++ program to find circumradius of // a cyclic quadrilateral using sides #include <bits/stdc++.h> using namespace std; // Function to return the circumradius // of a cyclic quadrilateral using sides double Circumradius(int a, int b, int c, int d) { // Find semiperimeter double s = (a + b + c + d) / 2.0; // Calculate the radius double radius = sqrt(((a * b) + (c * d)) * ((a * c) + (b * d)) * ((a * d) + (b * c)) / ((s - a) * (s - b) * (s - c) * (s - d))); return radius / 4; } // Driver Code int main() { int A = 3; int B = 4; int C = 5; int D = 6; // Function call double ans = Circumradius(A, B, C, D); // Print the radius cout << setprecision(3) << ans; return 0; } // This code is contributed by mohit kumar 29

Java

// Java program to find circumradius of // a cyclic quadrilateral using sides import java.util.*; class GFG{ // Function to return the circumradius // of a cyclic quadrilateral using sides static double Circumradius(int a, int b, int c, int d) { // Find semiperimeter double s = (a + b + c + d) / 2.0; // Calculate the radius double radius = Math.sqrt(((a * b) + (c * d)) * ((a * c) + (b * d)) * ((a * d) + (b * c)) / ((s - a) * (s - b) * (s - c) * (s - d))); return radius / 4; } // Driver Code public static void main(String[] args) { int A = 3; int B = 4; int C = 5; int D = 6; // Function call double ans = Circumradius(A, B, C, D); // Print the radius System.out.format("%.2f", ans); } } // This code is contributed by 29AjayKumar

Python

# Program to find Circumradius of # a cyclic quadrilateral using sides import math # Function to return the Circumradius # of a cyclic quadrilateral using sides def Circumradius(a, b, c, d): # Find semiperimeter s = (a + b + c + d) / 2 # Calculate the radius radius = (1 / 4)*math.sqrt(((a * b)+(c * d))* ((a * c)+(b * d))*((a * d)+(b * c)) /((s-a)*(s-b)*(s-c)*(s-d))) return radius # Driver Code # Given sides A = 3 B = 4 C = 5 D = 6 # Function Call ans = Circumradius(A, B, C, D) # Print the radius print(round(ans, 2))

C#

// C# program to find circumradius of // a cyclic quadrilateral using sides using System; class GFG{ // Function to return the circumradius // of a cyclic quadrilateral using sides static double Circumradius(int a, int b, int c, int d) { // Find semiperimeter double s = (a + b + c + d) / 2.0; // Calculate the radius double radius = Math.Sqrt(((a * b) + (c * d)) * ((a * c) + (b * d)) * ((a * d) + (b * c)) / ((s - a) * (s - b) * (s - c) * (s - d))); return radius / 4; } // Driver Code public static void Main(String[] args) { int A = 3; int B = 4; int C = 5; int D = 6; // Function call double ans = Circumradius(A, B, C, D); // Print the radius Console.Write("{0:F2}", ans); } } // This code is contributed by 29AjayKumar

JavaScript

<script> // Javascript program to find circumradius of // a cyclic quadrilateral using sides // Function to return the circumradius // of a cyclic quadrilateral using sides function Circumradius(a, b, c, d) { // Find semiperimeter var s = (a + b + c + d) / 2.0; // Calculate the radius var radius = Math.sqrt(((a * b) + (c * d)) * ((a * c) + (b * d)) * ((a * d) + (b * c)) / ((s - a) * (s - b) * (s - c) * (s - d))); return radius / 4; } // Driver code var A = 3; var B = 4; var C = 5; var D = 6; // Function call var ans = Circumradius(A, B, C, D); // Print the radius document.write(ans.toFixed(2)); // This code is contributed by Khushboogoyal499 </script>


Output

3.29

Time Complexity: O(log s) 
Auxiliary Space: O(1)




Reffered: https://www.geeksforgeeks.org


Geometric

Related
Count of collisions at a point (X, Y) Count of collisions at a point (X, Y)
Count of Right-Angled Triangle formed from given N points whose base or perpendicular are parallel to X or Y axis Count of Right-Angled Triangle formed from given N points whose base or perpendicular are parallel to X or Y axis
Count of nested polygons that can be drawn by joining vertices internally Count of nested polygons that can be drawn by joining vertices internally
Find the area of rhombus from given Angle and Side length Find the area of rhombus from given Angle and Side length
Length of diagonal of a parallelogram using adjacent sides and angle between them Length of diagonal of a parallelogram using adjacent sides and angle between them

Type:
Geek
Category:
Coding
Sub Category:
Tutorial
Uploaded by:
Admin
Views:
9