Usar un Bucle o la Función pow()
En este paso, aprenderás dos métodos para calcular potencias en C: utilizando un bucle manual y utilizando la función incorporada pow() de la biblioteca matemática.
Primero, modifiquemos el archivo anterior power_calculation.c para implementar el cálculo de potencias:
cd ~/project
nano power_calculation.c
Método 1: Usando un Bucle
#include <stdio.h>
int calculate_power_loop(int base, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= base;
}
return result;
}
int main() {
int base, exponent;
printf("Ingrese el número base: ");
scanf("%d", &base);
printf("Ingrese el exponente: ");
scanf("%d", &exponent);
int power_result = calculate_power_loop(base, exponent);
printf("%d elevado a la potencia de %d es: %d\n", base, exponent, power_result);
return 0;
}
Método 2: Usando la Función pow()
#include <stdio.h>
#include <math.h>
int main() {
int base, exponent;
printf("Ingrese el número base: ");
scanf("%d", &base);
printf("Ingrese el exponente: ");
scanf("%d", &exponent);
// Nota: pow() devuelve un double, por lo que lo convertimos a int
int power_result = (int)pow(base, exponent);
printf("%d elevado a la potencia de %d es: %d\n", base, exponent, power_result);
return 0;
}
Compila el programa con la biblioteca matemática:
gcc power_calculation.c -o power_calculation -lm
Ejemplo de salida:
Ingrese el número base: 2
Ingrese el exponente: 3
2 elevado a la potencia de 3 es: 8
Explicación del código:
- El método de bucle multiplica manualmente la base por sí misma
exponent veces.
- La función
pow() de math.h proporciona un cálculo de potencia incorporado.
- El flag
-lm es necesario para enlazar la biblioteca matemática al compilar.
- Convertimos el resultado de
pow() a int para que coincida con nuestro cálculo entero.