Sha256: 6bfc95086d96824aef7f976884345e07fe710c0547eba255b4ac337b77f2d09e
Contents?: true
Size: 530 Bytes
Versions: 396
Compression:
Stored size: 530 Bytes
Contents
(ns roman-numerals) (def ^:private numeral-mapping [ [1000 "M"] [ 900 "CM"] [ 500 "D"] [ 400 "CD"] [ 100 "C"] [ 90 "XC"] [ 50 "L"] [ 40 "XL"] [ 10 "X"] [ 9 "IX"] [ 5 "V"] [ 4 "IV"] [ 1 "I"] ]) (defn- largest-factor [number] (first (filter (fn [[p l]] (<= p number)) numeral-mapping))) (defn numerals [number] (if (zero? number) "" (let [[part letter] (largest-factor number) remainder (- number part)] (str letter (numerals remainder)))))
Version data entries
396 entries across 396 versions & 1 rubygems