Función power en C: potencias con for loop
Clase 3 de 12 • Curso de Funciones en C
Contenido del curso
Manejo de funciones en C
Bibliotecas estándar de funciones
Cierre
Implementamos paso a paso la función power en C: desde el boilerplate con stdio.h y el prototipo, hasta el for loop que multiplica la base por sí misma y el uso de printf para validar resultados. Verás cómo escribir código corto, claro y reutilizable, con buenas prácticas como declarar funciones arriba, evitar hardcodear valores y retornar el dato correcto.
¿Qué construimos y por qué es útil en C?
Creamos una función entera que calcula potencias mediante multiplicaciones sucesivas. Se declara su prototipo arriba para que el compilador reconozca su existencia, se define debajo de main, y se prueba con un ciclo que imprime 2 elevado a distintos exponentes.
- Librería estándar: se usa <stdio.h> para printf.
- Prototipo de función: declarar arriba avisa al compilador que la función existe.
- Variables auxiliares: i como contador y p como acumulador del resultado.
- Ciclo for: i++ para iterar hasta cumplir la condición.
- Formato de salida: printf con %d y salto de línea \n.
- Tipo y retorno: return type int y return del valor calculado.
- Buena práctica: evitar quemar valores, parametrizar base y exponente.
- Cierre de programa: return 0 al final de main.
¿Cómo se declara y define la función power?
Primero, el prototipo para que el compilador no marque error cuando vea llamadas a la función antes de su definición.
¿Qué hace el prototipo de función?
Indica nombre, parámetros y tipo de retorno.
int power(int base, int n);
¿Cómo funciona el algoritmo iterativo?
Multiplica la base por sí misma n veces. p inicia en 1 para respetar que toda base a la 0 vale 1.
int power(int base, int n) { int i, p; p = 1; for (i = 1; i <= n; i++) { p = p * base; } return p; }
- Inicialización: p = 1 garantiza que base^0 sea 1.
- Iteración controlada: i va de 1 a n, realizando n multiplicaciones.
- Acumulación: p = p * base guarda el progreso de la potencia.
- Retorno correcto: se retorna p, que es el resultado esperado.
Además, se explica el concepto matemático clave: una potencia tiene base y exponente. Ejemplo: 2^3 es 2 por 2 por 2, que da 8.
¿Cómo se prueba con un ciclo for y printf?
Se recorre una serie de exponentes y se imprime el exponente n junto al resultado de power(2, n). Así verificas desde n=0 hasta un límite.
¿Qué imprime el programa?
El siguiente main itera y muestra resultados legibles.
#include <stdio.h> int power(int base, int n); int main(void) { int i; for (i = 0; i <= 10; i++) { printf("n es igual a %d, el resultado de la potencia es %d\n", i, power(2, i)); } return 0; }
Ejemplos esperados con base 2:
- n=0: resultado 1.
- n=1: resultado 2.
- n=2: resultado 4.
- n=3: resultado 8.
- n=8: resultado 256.
¿Te gustaría extenderlo a otras bases o rangos de n? Prueba cambios y cuéntame en comentarios qué resultados obtuviste y qué dudas surgieron.