Number formatting

folks - can’t quite figure this one out…

foo = 5
bar = 10

basically - when i go to print out the numbers - i want to format ‘foo’
with a leding zero so that it reads ‘05’ and is aesthetically pleasing
when compared to a double-digit number - such as bar: ‘10’.

essentially looking to get:

05
10
25
03

On Fri, Jun 01, 2007 at 01:03:26AM +0900, Cory wrote:

essentially looking to get:

05
10
25
03

foo = 5
puts “%02d” % foo

--------------------------------------------------------------- String#%
str % arg => new_str

 Format---Uses _str_ as a format specification, and returns the
 result of applying it to _arg_. If the format specification
 contains more than one substitution, then _arg_ must be an +Array+
 containing the values to be substituted. See +Kernel::sprintf+ for
 details of the format string.

    "%05d" % 123                       #=> "00123"
    "%-5s: %08x" % [ "ID", self.id ]   #=> "ID   : 200e14d6"

folks - can’t quite figure this one out…

foo = 5
bar = 10

basically - when i go to print out the numbers - i want to
format ‘foo’
with a leding zero so that it reads ‘05’ and is aesthetically
pleasing when compared to a double-digit number - such as bar: ‘10’.

sprintf(’%02d’, foo)

  • donald

On 5/31/07, Cory [email protected] wrote:

folks - can’t quite figure this one out…

foo = 5
bar = 10

basically - when i go to print out the numbers - i want to format ‘foo’
with a leding zero so that it reads ‘05’ and is aesthetically pleasing
when compared to a double-digit number - such as bar: ‘10’.

Try using Kernel#printf.

irb(main):001:0> printf(“%02d”, 5)
05=> nil