# Comparing Floating Point Integers In Golang

The Loop and Functions exercise in gotour requires the implementation of the square root function using Newton's method. And one of its challenges is to

stop once the value has stopped changing (or only changes by a very small delta)

A naive approach of using the golang `==`

comparison operator on float64 types will lead to an infinite loop in this exercise.

The way I solve this challenge is by specifying a tolerance, such that two float64 operands are consider equal when the absolute value of their deltas are smaller than the tolerance.

```
const TOLERANCE = 0.000001
for {
// Newton's method
if diff := math.Abs(result - temp); diff < TOLERANCE { // consider equal and break
break
} else {
// do something and continue
}
}
```

My full solution to this exercise can be found here. The same repo also contains solutions to other exercises in gotour.

#### Written by Ivan Sim

#### Related protips

#### Have a fresh tip? Share with Coderwall community!

Post

Post a tip

Best
#Ivanhcsim
Authors

ihcsim

491.1K

Sponsored by #native_company# — Learn More

#native_title#
#native_desc#