Skip to content

Instantly share code, notes, and snippets.

@robhinds
Created October 5, 2013 19:53
Show Gist options
  • Save robhinds/6845384 to your computer and use it in GitHub Desktop.
Save robhinds/6845384 to your computer and use it in GitHub Desktop.
def sqrtIter(guess: Double, x: Double): Double =
if (isGoodEnough(guess, x)) guess
else sqrtIter(improve(guess, x), x)
def improve(guess: Double, x: Double) =
(guess + x / guess) / 2
def isGoodEnough(guess: Double, x: Double) =
abs(guess * guess - x) < 0.001
def sqrt(x: Double) = srqtIter(1.0, x)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment