Programa en C que calcula raíces cúbicas

Un par de días antes de que mis vacaciones en los Pirineos finalizaran, mi padre me explicó cómo resolver raíces cúbicas a mano empleando un curioso método que consiste en descomposición en sucesivas raíces cuadradas. Para que nos entendamos:

3√a = a^(1/3) = a^(4/12) = a^(1/12) * a^(3/12) = a^(1/12) * a^(1/4) = √(√(a)) * a^(1/12)

De este modo, y realizando el mismo procedimiento sucesivamente (en este caso, habría que volver a hacerlo con el elemento a^(1/12) ), nos iremos aproximando cada vez más y más al resultado real. Cuanto mayor sea el denominador de la potencia que no podemos calcular a mano, más se aproximará el valor del elemento a 1, y mejor será la estimación.

El código está basado en este principio, así como en una sucesión en la que reparé al realizar los cálculos a mano. En algún sitio hay un pequeño fallo que subsané sumando 2 a una variable, pero no tuve las ganas suficientes de rastrearlo a lo largo de las más de 10 carillas que rellené pensando en esto.

Y aquí está el código, yo lo he compilado empleando gcc en Ubuntu, pero para gustos, colores:


Leave a Reply