]> mj.ucw.cz Git - misc.git/commitdiff
Fixed factorization.
authorMartin Mares <mj@ucw.cz>
Sat, 15 Mar 2008 15:11:59 +0000 (16:11 +0100)
committerMartin Mares <mj@ucw.cz>
Sat, 15 Mar 2008 15:11:59 +0000 (16:11 +0100)
pyth.hs

diff --git a/pyth.hs b/pyth.hs
index 82e44fd73369888c334c8ae9d3d8b0d32ee24484..a59845bcbb4cda2be94028e2b906a993a7cbb1fc 100644 (file)
--- a/pyth.hs
+++ b/pyth.hs
@@ -7,7 +7,8 @@ sqr x = x*x
 -- Find (p,q) such that x=p^2*q and q is square-free
 sqf' :: Int -> Int -> (Int,Int)
 sqf' _ 1 = (1,1)
-sqf' d x | x `mod` (sqr d) == 0 = (d*p1,q1)
+sqf' d x | x < (sqr d)        = (1,x)
+         | x `mod` (sqr d) == 0 = (d*p1,q1)
          | x `mod` d == 0     = (p2,d*q2)
         | True               = sqf' (d+1) x
         where (p1,q1) = sqf' d (x `div` (sqr d))