I think the function you're looking for is: myRound n places = round (n / fromIntegral factor) * factor where factor = 10 ^ (places - 1)
In this case, 10 ^ (places - 1) has integral type (either Int or Integer). I need it to be a fractional type to divide n by it, so I use fromIntegral to convert it. /g On 2/12/06, Chatzianastassiou Achilleas <[EMAIL PROTECTED]> wrote: > Thanks for the anwser Sebastian, > > this seems to work, however I am trying to implement something like > Main> myfunction 123.456 2 > 120.0 > > > >From: Sebastian Sylvan <[EMAIL PROTECTED]> > >Reply-To: [EMAIL PROTECTED] > >To: Chatzianastassiou Achilleas <[EMAIL PROTECTED]> > >CC: haskell-cafe@haskell.org > >Subject: Re: [Haskell-cafe] round function > >Date: Sun, 12 Feb 2006 22:23:17 +0100 > > > >On 2/12/06, Chatzianastassiou Achilleas <[EMAIL PROTECTED]> > >wrote: > > > Hi all, > > > > > > I am trying to implement a function that finds the significant figure of > >a > > > number to a specified point i.e. 2.55555 3 = 2.556. I have implemented > > > something like: > > > > > > sig :: (RealFrac a, Integral b) => a -> Int -> a > > > sig x y = round y > > > > > > However this doesn't work. Moreover at the Prelude when i type round > >2.3333 > > > 2 i get an error. > > > Any suggestions? > > > > > > >Something like: > > > >myround n s = fromIntegral (round (n * factor)) / factor > > where factor = fromIntegral (10^s) > > > >Basically scaling it to bring the specified number of digits to the > >left of the decimal point, then rounding, then scaling back. > > > >/S > > > >-- > >Sebastian Sylvan > >+46(0)736-818655 > >UIN: 44640862 > > _________________________________________________________________ > FREE pop-up blocking with the new MSN Toolbar – get it now! > http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/ > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > -- We have lingered in the chambers of the sea By sea-girls wreathed with seaweed red and brown Till human voices wake us, and we drown.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe