summaryrefslogtreecommitdiff
path: root/chapter21/src/test
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2025-04-02 14:55:48 -0700
committerCliff Click <cliffc@acm.org>2025-04-02 14:55:48 -0700
commitb73a1146a1af2eabe6af1ba043fc6ff5ef8731ab (patch)
tree645c7a1a72f8bb7d292977a16c3e7ef9ffc6f0ec /chapter21/src/test
parent9452d347d07ff38f6897be0ff8e9a50b7b43ddc3 (diff)
downloadSimple-b73a1146a1af2eabe6af1ba043fc6ff5ef8731ab.tar.gz
Simple-b73a1146a1af2eabe6af1ba043fc6ff5ef8731ab.zip
parse negative floats
Diffstat (limited to 'chapter21/src/test')
-rw-r--r--chapter21/src/test/java/com/seaofnodes/simple/progs/newtonFloat.smp3
1 files changed, 2 insertions, 1 deletions
diff --git a/chapter21/src/test/java/com/seaofnodes/simple/progs/newtonFloat.smp b/chapter21/src/test/java/com/seaofnodes/simple/progs/newtonFloat.smp
index 5cb798a9..b41fc26e 100644
--- a/chapter21/src/test/java/com/seaofnodes/simple/progs/newtonFloat.smp
+++ b/chapter21/src/test/java/com/seaofnodes/simple/progs/newtonFloat.smp
@@ -1,10 +1,11 @@
// -*- mode: java; -*-
// Newtons approximation to the square root
val sqrt = { flt x ->
+ flt epsilon = 1e-57;
flt guess = x;
while( 1 ) {
flt next = (x/guess + guess)/2;
- if( next == guess ) return guess;
+ if( guess-epsilon <= next & next <= guess+epsilon ) return guess;
guess = next;
}
};