Last active
December 27, 2015 15:19
-
-
Save xyos/7347065 to your computer and use it in GitHub Desktop.
ejemplo aproximacion de raices cuadradas con el metodo de newton
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//recogemos el numero de la linea de comandos y lo guardamos en number | |
var args = process.argv.splice(2); | |
number = args[0]; | |
//la funcion recursiva | |
function r_sqroot(number, guess) { | |
// nuestra primera aproximacion, se usa cuando aun no tenemos aproximación(1ra pasada por la función). | |
if (guess == undefined) { | |
guess = number/2; | |
} | |
// una variable temporal para comparar como cambia la aproximacion | |
var t = guess; | |
// calculamos la aproximacion | |
guess = (number/guess + guess)/2 | |
// si la aproximacion temporal es igual a la nueva, terminamos de calcular | |
if (t == guess) { | |
//imprimimos la aproximacion | |
console.log(parseInt(guess)); | |
return 0; | |
} else { | |
// volvemos a calcular nuesta aproximacion en caso de que no sea igual con la temporal | |
return r_sqroot(number,guess); | |
} | |
} | |
// iniciamos el calculo pasandole number a la funcion recursiva. | |
r_sqroot(parseInt(number)); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment