Re: Formating numbers using commas?
- Posted by Dan Moyer <DANIELMOYER at prodigy.net> Jun 30, 2002
- 411 views
Juergen, Thanks, I wrote it to show the results in an attempt to make a sorted by size directory size lister (which ultimately worked fine until I tried to use it as intended, from drive letter level instead of starting from a directory, which I was never able to debug). I like "generalizing" functions so they can do more things, thanks! Dan ----- Original Message ----- From: "Juergen Luethje" <jluethje at gmx.de> To: "EUforum" <EUforum at topica.com> Sent: Sunday, June 30, 2002 10:57 AM Subject: Re: Formating numbers using commas? > > Hi Dan, > > you wrote: > > [function PrettyNumbers(object aNumber)] > > Very nice function! > > I changed it somewhat, so that the principle can be applied more > general. > > Best regards, > Juergen > > ------------------------------------------------------------------->8--- > > function block_fmt (sequence s, integer delim_char, integer block_len) > sequence ret > integer counter > > ret = {} > counter = 0 > for p = length(s) to 2 by -1 do > ret = prepend(ret, s[p]) > counter += 1 > if counter = block_len then > ret = prepend(ret, delim_char) > counter = 0 > end if > end for > > return prepend(ret, s[1]) > end function > > ------------------------------ > > include misc.e > include machine.e > > > function PrettyNumbers (integer i) > return block_fmt(sprint(i), ',', 3) > end function > > > function nibbles (integer i) > sequence ret > integer p > > ret = reverse(int_to_bits(i, 31)) + '0' > p = find('1', ret) > if p = 0 then return "0" end if > > return block_fmt(ret[p..length(ret)], ' ', 4) > end function > > ------------------------------ > > puts(1, PrettyNumbers(1234) & '\n') > puts(1, nibbles(20)) > > > >