Sha256: 0764eec383307e98edfe37e08916c8f3e366d55820d17040ace595a237dfde66

Contents?: true

Size: 411 Bytes

Versions: 43

Compression:

Stored size: 411 Bytes

Contents

class Fixnum

  def nth
    # if the first two digits of rank are between 11 and 20, it's an
    # 'up-teenth' kinda number
    modulo_100 = self % 100
    if modulo_100 < 10 || modulo_100 > 20
      case self % 10
      when 1
        return "st"
      when 2
        return "nd"
      when 3
        return "rd"
      end
    end

    return "th"
  end

  def ordinalize
    return "#{self}#{nth}"
  end

end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
sugarcube-1.0.2 lib/sugarcube-numbers/fixnum.rb
sugarcube-1.0.1 lib/sugarcube-numbers/fixnum.rb
sugarcube-1.0.0 lib/sugarcube-numbers/fixnum.rb