Skip to content

Instantly share code, notes, and snippets.

@altaf933
Last active November 12, 2015 14:42
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save altaf933/e553faa418fa19bd25d7 to your computer and use it in GitHub Desktop.
Save altaf933/e553faa418fa19bd25d7 to your computer and use it in GitHub Desktop.
http://www.freecodecamp.com/altaf933 's solution for Bonfire: Roman Numeral Converter
// Bonfire: Roman Numeral Converter
// Author: @altaf933
// Challenge: http://www.freecodecamp.com/challenges/bonfire-roman-numeral-converter
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function convert(num) {
var numBer = new Array();
var strNumeral=num.toString();
numBer = strNumeral.split('');
var lentNumeral = strNumeral.length;
var appendNumeralM ='';
var appendNumeralC ='';
var appendNumeralX ='';
var appendNumeral ='';
var mCount = 0;
var cCount =0 ;
var xCount = 0;
var nCount = 0;
lentNumeral=num.toString().length;
while(num > 0)
{
// lentNumeral=num.toString().length;
if(num >= 1000){
appendNumeralM+='M';
num-=1000;
//lentNumeral=num.toString().length;
//appendNumeralM
}else if(num <= 999 && num >=100){
cCount++;
appendNumeralC+='C';
num-=100;
lentNumeral=num.toString().length;
if(cCount == 9)
{
appendNumeralC = 'CM';
}else if(cCount == 4)
{
appendNumeralC = 'DC';
}else if(cCount == 5)
{
appendNumeralC = 'D';
}
}else if(num <= 99 && num >=10){
xCount++;
appendNumeralX+='X';
num-=10;
//xCount++;
lentNumeral=num.toString().length;
if(xCount == 9)
{
appendNumeralX = 'XC';
}else if(xCount == 4)
{
appendNumeralX = 'XL';
}else if(xCount == 5)
{
appendNumeralX = 'L';
}
}else if(num <= 9){
nCount++;
appendNumeral+='I';
num-=1;
lentNumeral=num.toString().length;
if(nCount == 9)
{
appendNumeral = 'IX';
}else if(nCount == 4)
{
appendNumeral = 'IV';
}else if(nCount == 5)
{
appendNumeral = 'V';
}
}
}
return appendNumeralM+appendNumeralC+appendNumeralX+appendNumeral;
}
convert(999);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment