Dé un rectángulo con largo l y ancho b , que inscriba un rombo, que a su vez inscriba un círculo. La tarea es encontrar el radio de este círculo.
Ejemplos:
Input: l = 5, b = 3 Output: 1.28624 Input: l = 6, b = 4 Output: 1.6641
Enfoque : de la figura, está claro que las diagonales, x e y , son iguales al largo y al ancho del rectángulo.
También el radio del círculo, r , dentro de un rombo es = xy/2√(x^2+y^2).
Entonces, el radio del círculo en términos de l & b es = lb/2√(l^2+b^2).
A continuación se muestra la implementación del enfoque anterior :
C++
// C++ implementation of above approach #include <bits/stdc++.h> using namespace std; // Function to find the radius // of the inscribed circle float circleradius(float l, float b) { // the sides cannot be negative if (l < 0 || b < 0) return -1; // radius of the circle float r = (l * b) / (2 * sqrt((pow(l, 2) + pow(b, 2)))); return r; } // Driver code int main() { float l = 5, b = 3; cout << circleradius(l, b) << endl; return 0; }
Java
// Java implementation of above approach import java.io.*; class GFG { // Function to find the radius // of the inscribed circle static float circleradius(float l, float b) { // the sides cannot be negative if (l < 0 || b < 0) return -1; // radius of the circle float r = (float)((l * b) / (2 * Math.sqrt((Math.pow(l, 2) + Math.pow(b, 2))))); return r; } // Driver code public static void main (String[] args) { float l = 5, b = 3; System.out.print (circleradius(l, b)) ; } } // This code is contributed by inder_verma..
Python3
# Python 3 implementation of # above approach from math import sqrt # Function to find the radius # of the inscribed circle def circleradius(l, b): # the sides cannot be negative if (l < 0 or b < 0): return -1 # radius of the circle r = (l * b) / (2 * sqrt((pow(l, 2) + pow(b, 2)))); return r # Driver code if __name__ == '__main__': l = 5 b = 3 print("{0:.5}" . format(circleradius(l, b))) # This code is contribute # by Surendra_Gagwar
C#
// C# implementation of above approach using System; class GFG { // Function to find the radius // of the inscribed circle static float circleradius(float l, float b) { // the sides cannot be negative if (l < 0 || b < 0) return -1; // radius of the circle float r = (float)((l * b) / (2 * Math.Sqrt((Math.Pow(l, 2) + Math.Pow(b, 2))))); return r; } // Driver code public static void Main () { float l = 5, b = 3; Console.WriteLine(circleradius(l, b)); } } // This code is contributed // by inder_verma
PHP
<?php // PHP implementation of above approach // Function to find the radius // of the inscribed circle function circleradius($l, $b) { // the sides cannot be negative if ($l < 0 || $b < 0) return -1; // radius of the circle $r = ($l * $b) / (2 * sqrt((pow($l, 2) + pow($b, 2)))); return $r; } // Driver code $l = 5; $b = 3; echo circleradius($l, $b), "\n"; // This code is contributed by ajit ?>
Javascript
<script> // javascript implementation of above approach // Function to find the radius // of the inscribed circle function circleradius(l , b) { // the sides cannot be negative if (l < 0 || b < 0) return -1; // radius of the circle var r = ((l * b) / (2 * Math.sqrt((Math.pow(l, 2) + Math.pow(b, 2))))); return r; } var l = 5, b = 3; document.write(circleradius(l, b).toFixed(5)) ; // This code is contributed by shikhasingrajput </script>
Producción:
1.28624
Complejidad de tiempo : O (logn)
Espacio Auxiliar: O(1) ya que usa variables constantes
Publicación traducida automáticamente
Artículo escrito por IshwarGupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA