Sha256: 97bd9205c0b262e5a4fd0301ad5b8cf4849a7349fcae8f8bbbbc2097b1a64a48

Contents?: true

Size: 740 Bytes

Versions: 255

Compression:

Stored size: 740 Bytes

Contents

'use strict';

module.exports = function(number) {
  var result = '';
  var mappings = [
    {arabic: 1000, roman: 'M'},
    {arabic:  900, roman: 'CM'},
    {arabic:  500, roman: 'D'},
    {arabic:  400, roman: 'CD'},
    {arabic:  100, roman: 'C'},
    {arabic:   90, roman: 'XC'},
    {arabic:   50, roman: 'L'},
    {arabic:   40, roman: 'XL'},
    {arabic:   10, roman: 'X'},
    {arabic:    9, roman: 'IX'},
    {arabic:    5, roman: 'V'},
    {arabic:    4, roman: 'IV'},
    {arabic:    1, roman: 'I'}
  ];

  for (var i=0; i < mappings.length; i++) {
    var mapping = mappings[i];
    while (number >= mapping.arabic) {
      result = result + mapping.roman;
      number = number - mapping.arabic;
    }
  }

  return result;
};

Version data entries

255 entries across 255 versions & 1 rubygems

Version Path
trackler-2.2.1.37 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.36 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.35 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.34 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.33 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.32 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.31 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.30 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.29 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.28 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.27 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.26 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.25 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.24 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.23 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.22 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.21 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.20 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.19 tracks/javascript/exercises/roman-numerals/example.js
trackler-2.2.1.18 tracks/javascript/exercises/roman-numerals/example.js