Hoy vamos a ver cómo crear un programa en C que calcule el volumen de una esfera utilizando funciones matemáticas. Para ello usaremos la constante Pi, así como la función pow para elevar un número en C.
Igualmente veremos la fórmula y cómo se aplica en nuestro programa; sin perder precisión.
Fórmula para calcular el volumen de una esfera
Ya vimos cómo es la fórmula para calcular el volumen de la esfera, aquí no la explicaremos. Te invito a leer ese post para que sepas cómo hacerlo, o si ya sabes continúa leyendo.
Volumen de una esfera en C
Ahora sí a lo que hemos venido. Aquí el código de la función:
double volumenDeEsfera(double radio) {
/*
1: Elevar radio al cubo y eso multiplicarlo por PI
M_PI * pow(radio, 3);
2: Al resultado anterior lo multiplicamos por 4
(4 * (M_PI * pow(radio, 3)))
3: Al resultado anterior lo dividimos entre 3
(4 * (M_PI * pow(radio, 3))) / 3
*/
return (4 * (M_PI * pow(radio, 3))) / 3;
}
Recibe el radio, el cual es de tipo double para no perder precisión. Y devuelve igualmente un double.
Probar programa
Con este código puedes hacer que el usuario introduzca el radio y se imprima el volumen:
/*
Calcular el volumen de una esfera
a partir de su radio en C
@author parzibyte
Visita: parzibyte.me
*/
#include <stdio.h>// printf y scanf
#include <math.h>// M_PI y pow
#ifndef MPI
#define M_PI 3.14159265358979323846
#endif
double volumenDeEsfera(double radio);
int main() {
double radio;
printf("Introduce el radio de la esfera:\n");
scanf("%lf", &radio);
printf("Volumen si esfera tiene radio de %lf es: %lf", radio,
volumenDeEsfera(radio));
}
double volumenDeEsfera(double radio) {
/*
1: Elevar radio al cubo y eso multiplicarlo por PI
M_PI * pow(radio, 3);
2: Al resultado anterior lo multiplicamos por 4
(4 * (M_PI * pow(radio, 3)))
3: Al resultado anterior lo dividimos entre 3
(4 * (M_PI * pow(radio, 3))) / 3
*/
return (4 * (M_PI * pow(radio, 3))) / 3;
}
Para escanear usamos el formato %lf
que escanea un double. De ahí son simples operaciones.
Comenzamos elevando el radio, luego eso lo multiplicamos por PI, más tarde por 4 y finalmente todo eso lo dividimos entre 3.
Es una operación de una línea. con comentarios que no afectan el rendimiento.
Mira más tutoriales de C aquí.