Skip to content

Instantly share code, notes, and snippets.

@gregtatum
Created January 14, 2015 20:21
Show Gist options
  • Save gregtatum/302cb4899352cc9b4dc4 to your computer and use it in GitHub Desktop.
Save gregtatum/302cb4899352cc9b4dc4 to your computer and use it in GitHub Desktop.
Root calculator using Newton's Method
function pow( number, degree ) {
var memo = 1;
while( degree-- ) {
memo *= number;
}
return memo;
}
function root( number, degree, iterations, guess ) {
//Via Newton's method
if( iterations === 0 ) return guess;
if( typeof guess !== "number" ) guess = number / 2;
var f = ( pow( guess, degree ) - number );
var df = ( degree * pow( guess, degree - 1 ) );
return root( number, degree, iterations - 1,
guess - f / df
);
}
@bayleedev
Copy link

Excited about ES6 having default arguments? function root(number, degree, iterations, guess = number / 2); Already available in coffee... :D

@gregtatum
Copy link
Author

That would be quite nice! But, but, coffeescript.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment