
The properFaction part is correct. So I posted the whole code, since
"isInteger" should accept any reasonable incoming types. Well, in this
one situation, it does not. And I cannot figure out why....
On Tue, Sep 29, 2009 at 3:07 PM, Jimmy Hartzell
Did you test the properFraction-based code in isolation? If code is broken, it's important to figure out which part of it is broken. Also, this function is not divided into constituent parts, but is a long unruly mess. Dividing it into parts would make it much much more readable, and you would then be able to test the parts individually.
Jimmy
The original code is givenSum num = map (\a -> let l = (sqrt $ fromIntegral (a * a + 2 + 2 * num)) - (fromIntegral a) in case properFraction l of (_, 0) -> True _ -> False ) $ take num [1..] :t l is (Floating a) => a Well, in ghci *Main> givenSum 10 [False,False,False,False,False,False,False,False,False,False]
On Tue, Sep 29, 2009 at 2:45 PM, Thomas DuBuisson
wrote: On Mon, Sep 28, 2009 at 11:35 PM, Magicloud Magiclouds
wrote: It never matches to (_, 0.0).... I mean case properFraction l of (_, 0) -> l _ -> 0 -- always goes here.
Odd, it works fine for me.
f x = case properFraction x of (_,0) -> True _ -> False
*Main> f 5 True *Main> f 5.5 False *Main> f 4.0 True *Main> f 4.00000001 False
Thomas
-- 竹密岂妨流水过 山高哪阻野云飞
-- 竹密岂妨流水过 山高哪阻野云飞