Revision: 1969
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at December 6, 2006 15:48 by gusto
Initial Code
DIGITS = ('0'..'9').to_a + ('A'..'Z').to_a def to_base36_from_l(num) result = "" while num != 0 tmp = num / DIGITS.length remainder = num - tmp * DIGITS.length char = DIGITS[remainder] num = tmp result = char + result end result end def to_l_from_base36(str) answer = 0 str.reverse.split("").each_with_index { |c, i| answer += (DIGITS.index(c) * (DIGITS.length ** i)) } answer end # sample usage num = 1451252361345125 base36 = to_base36_from_l(num) puts "#{base36} from #{to_l_from_base36(base36)}" # output: EAFC4PPW85 from 1451252361345125
Initial URL
Initial Description
Initial Title
Decimal to Base 36 / Base 36 to Decimal
Initial Tags
Initial Language
Other