Dado un cuadrado de longitud de lado ‘a’, la tarea es encontrar la longitud de lado del octágono más grande que se puede inscribir en él.
Ejemplos:
Input: a = 4 Output: 1.65685 Input: a = 5 Output: 2.07107
Enfoque :
=> From the figure, it can be seen that, side length of the Octagon = b => Also since the polygons are regular, therefore 2*x + b = a => From the right angled triangle, x^2 + x^2 = b^2 => Hence, x = b/√2, => So, √2b + b = a => Therefore, b = a/(√2 +1)
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ Program to find the side of the octagon // which can be inscribed within the square #include <bits/stdc++.h> using namespace std; // Function to find the side // of the octagon float octaside(float a) { // side cannot be negative if (a < 0) return -1; // side of the octagon float s = a / (sqrt(2) + 1); return s; } // Driver code int main() { // Get he square side float a = 4; // Find the side length of the square cout << octaside(a) << endl; return 0; }
Java
// Java Program to find the side of the octagon // which can be inscribed within the square import java.io.*; class GFG { // Function to find the side // of the octagon static double octaside(double a) { // side cannot be negative if (a < 0) return -1; // side of the octagon double s = a / (Math.sqrt(2) + 1); return s; } // Driver code public static void main (String[] args) { // Get he square side double a = 4; // Find the side length of the square System.out.println( octaside(a)); } } //This Code is contributed by ajit
Python3
# Python 3 Program to find the side # of the octagon which can be # inscribed within the square from math import sqrt # Function to find the side # of the octagon def octaside(a): # side cannot be negative if a < 0: return -1 # side of the octagon s = a / (sqrt(2) + 1) return s # Driver code if __name__ == '__main__': # Get he square side a = 4 # Find the side length of the square print("{0:.6}".format(octaside(a))) # This code is contributed # by Surendra_Gangwar
C#
// C# Program to find the side // of the octagon which can be // inscribed within the square using System; class GFG { // Function to find the side // of the octagon static double octaside(double a) { // side cannot be negative if (a < 0) return -1; // side of the octagon double s = a / (Math.Sqrt(2) + 1); return s; } // Driver code static public void Main () { // Get he square side double a = 4; // Find the side length // of the square Console.WriteLine( octaside(a)); } } // This code is contributed // by akt_mit
PHP
<?php // PHP Program to find the side of the octagon // which can be inscribed within the square // Function to find the side // of the octagon function octaside($a) { // side cannot be negative if ($a < 0) return -1; // side of the octagon $s = $a / (sqrt(2) + 1); return $s; } // Driver code // Get he square side $a = 4; // Find the side length of the square echo octaside($a); // This code is contributed by ajit ?>
Javascript
<script> // javascript Program to find the side of the octagon // which can be inscribed within the square // Function to find the side // of the octagon function octaside(a) { // side cannot be negative if (a < 0) return -1; // side of the octagon var s = a / (Math.sqrt(2) + 1); return s; } // Driver code // Get he square side var a = 4; // Find the side length of the square document.write( octaside(a).toFixed(5)); // This code is contributed by shikhasingrajput </script>
Producción:
1.65685
Complejidad de tiempo: O(1)
Complejidad espacial: O(1)
Publicación traducida automáticamente
Artículo escrito por IshwarGupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA