`adding one tenth ten times equals one`

() { var result: Double = 0.0 repeat(10) { result += 0.1 } assert(result == 1.0) } It fails! But why? Non-decimal base Floating-point numbers like Float and Double are internally represented like this: mantissa * base ^ exponent For humans the base of 10 is very common. We use the decimal system. In the decimal system 0.
# Never check equality for two Floating-Point Numbers!

Would this test pass or fail?: @Test fun