add an __main__ test thing
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 28 Apr 2019 13:44:18 +0000 (14:44 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 28 Apr 2019 13:44:18 +0000 (14:44 +0100)
src/add/fsqrt.py

index cb6a8ac03f849e70346ed9ff5a69075f130f1aa2..3a8f8905680e5a94d52466a157239f1944dd63f5 100644 (file)
@@ -44,6 +44,7 @@ def sqrt(num):
         r = R
     return Q
 
+
 def main(mantissa, exponent):
     if exponent & 1 != 0:
         return sqrt(mantissa << 1), # shift mantissa up
@@ -51,10 +52,13 @@ def main(mantissa, exponent):
     return sqrt(mantissa),      # mantissa as-is
            (exponent / 2)       # no compensating needed on exp
 
-for Q in range(1, int(1e7)):
-    print(Q, sqrt(Q), sqrtsimple(Q), int(Q**0.5))
-    assert int(Q**0.5) == sqrtsimple(Q), "Q sqrtsimpl fail %d" % Q
-    assert int(Q**0.5) == sqrt(Q), "Q sqrt fail %d" % Q
+
+if __name__ == '__main__':
+    for Q in range(1, int(1e7)):
+        print(Q, sqrt(Q), sqrtsimple(Q), int(Q**0.5))
+        assert int(Q**0.5) == sqrtsimple(Q), "Q sqrtsimpl fail %d" % Q
+        assert int(Q**0.5) == sqrt(Q), "Q sqrt fail %d" % Q
+
 """
 //This is the main code of integer sqrt function found here:http://verilogcodes.blogspot.com/2017/11/a-verilog-function-for-finding-square-root.html
 //