Programa para calcular el Área de Superficie de Elipsoide

Dada la longitud de los tres semiejes como A , B y C , la tarea es encontrar el área de superficie del elipsoide dado.

Elipsoide es una superficie cerrada en la que todas las secciones transversales planas son elipses o círculos. Un elipsoide es simétrico respecto a los tres ejes perpendiculares entre sí que se intersecan en el centro. Es una forma geométrica tridimensional cerrada, cuyas secciones planas son elipses o círculos.

Un elipsoide tiene tres ejes independientes y generalmente se especifica por las longitudes a, b, c de los tres semiejes. Si un elipsoide se hace girando una elipse alrededor de uno de sus ejes, entonces dos ejes del elipsoide son iguales y se llama elipsoide de revolución o esferoide. Si las longitudes de sus tres ejes son iguales, es una esfera.

Ejemplos:

Entrada: A = 1, B = 1, C = 1
Salida: 12,57

Entrada: A = 11, B = 12, C = 13
Salida: 1807.89

Enfoque: el problema dado se puede resolver usando la fórmula para el área de superficie del elipsoide como:

A continuación se muestra la implementación del enfoque anterior:

C++

// C++ program for the above approach
 
#include <iomanip>
#include <iostream>
#include <math.h>
using namespace std;
 
// Function to find the surface area of
// the given Ellipsoid
void findArea(double a, double b, double c)
{
 
    // Formula to find surface area
    // of an Ellipsoid
    double area = 4 * 3.141592653
                  * pow((pow(a * b, 1.6) + pow(a * c, 1.6)
                         + pow(b * c, 1.6))
                            / 3,
                        1 / 1.6);
 
    // Print the area
    cout << fixed << setprecision(2)
         << area;
}
 
// Driver Code
int main()
{
    double A = 11, B = 12, C = 13;
    findArea(A, B, C);
 
    return 0;
}

Java

// Java program of the above approach
import java.util.*;
 
class GFG{
 
// Function to find the surface area of
// the given Ellipsoid
static void findArea(double a, double b, double c)
{
     
    // Formula to find surface area
    // of an Ellipsoid
    double area = 4 * 3.141592653 * Math.pow((Math.pow(a * b, 1.6) +
                       Math.pow(a * c, 1.6) + Math.pow(b * c, 1.6)) /
                             3, 1 / 1.6);
 
    // Print the area
    System.out.print(String.format("%.2f", area));
}
 
// Driver Code
public static void main(String[] args)
{
    double A = 11, B = 12, C = 13;
     
    findArea(A, B, C);
}
}
 
// This code is contributed by code_hunt

Python3

# Python3 program for the above approach
from math import pow
 
# Function to find the surface area of
# the given Ellipsoid
def findArea(a, b, c):
     
    # Formula to find surface area
    # of an Ellipsoid
    area = (4 * 3.141592653 * pow((pow(a * b, 1.6) +
            pow(a * c, 1.6) + pow(b * c, 1.6)) / 3, 1 / 1.6))
 
    # Print the area
    print("{:.2f}".format(round(area, 2)))
 
# Driver Code
if __name__ == '__main__':
     
    A = 11
    B = 12
    C = 13
     
    findArea(A, B, C)
     
# This code is contributed by SURENDRA_GANGWAR

C#

// C# program of the above approach
using System;
 
class GFG{
 
// Function to find the surface area of
// the given Ellipsoid
static void findArea(double a, double b, double c)
{
     
    // Formula to find surface area
    // of an Ellipsoid
    double area = 4 * 3.141592653 * Math.Pow((Math.Pow(a * b, 1.6) +
                       Math.Pow(a * c, 1.6) + Math.Pow(b * c, 1.6)) /
                             3, 1 / 1.6);
 
    // Print the area
    Console.Write(Math.Round(area, 2));
}
 
// Driver Code
public static void Main(String[] args)
{
    double A = 11, B = 12, C = 13;
     
    findArea(A, B, C);
}
}
 
// This code is contributed by shivanisinghss2110

Javascript

<script>
        // JavaScript Program to implement
        // the above approach
 
        // Function to find the surface area of
        // the given Ellipsoid
        function findArea(a, b, c) {
 
            // Formula to find surface area
            // of an Ellipsoid
            let area = 4 * 3.141592653
                * Math.pow((Math.pow(a * b, 1.6) + Math.pow(a * c, 1.6)
                    + Math.pow(b * c, 1.6))
                    / 3,
                    1 / 1.6);
 
            // Print the area
            document.write(area.toPrecision(6));
        }
 
        // Driver Code
        let A = 11, B = 12, C = 13;
        findArea(A, B, C);
 
// This code is contributed by Potta Lokesh
    </script>
Producción: 

1807.89

 

Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por pptwo7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *