Fictizia / Curso-JS-para-desarrolladores-web_ed10

FICTIZIA » Curso de JavaScript para desarrolladores web — 10ª Edición
https://fictizia.com/formacion/curso-javascript
GNU General Public License v3.0
17 stars 8 forks source link

numeros romanos comentado #9

Closed UlisesGascon closed 6 years ago

UlisesGascon commented 6 years ago
function conversionRomana(numero) {

  var numeroOriginal = numero;

  if (numero <= 50 && numero > 0){
    var vueltas = 1;
    console.log("Numero original:", numero)
    //console.log("Valor de vueltas:", vueltas)
    var numeroRomano = "";

    while(numero > 0){
      console.log("👉 Empieza vuelta n:", vueltas);
      console.log("valor numeroRomano:", numeroRomano);
      console.log("valor numero:", numero);

      if(numero === 50){
        numeroRomano = "L";
        numero = 0;
      } else if (numero >= 40 && numero < 50){
        numeroRomano += "XL";
        numero -= 40;
      } else if (numero >= 10 && numero < 40){
        numeroRomano += "X";
        numero -= 10;
      } else if(numero === 9){
        numeroRomano += "IX";
        numero -= 9;
      } else if(numero === 8){
        numeroRomano += "VIII";
        numero -= 8;
      } else if (numero === 7){
        numeroRomano += "VII";
        numero -= 7;
      } else if (numero === 6){
        numeroRomano += "VI";
        numero -= 6;
      } else if (numero === 5) {
        numeroRomano += "V";
        numero -= 5;
      } else if (numero === 4){
        numeroRomano += "IV";
        numero -= 4;                
      } else if(numero <= 3 && numero > 0){
        numeroRomano += "I";
        numero -= 1;
      }

      console.log("Termina vuelta n:", vueltas);
      console.log("valor numeroRomano:", numeroRomano);
      console.log("valor numero:", numero);
      vueltas++

    }

    console.info(numeroOriginal + " en números romanos es " + numeroRomano);

  } else {

    console.warn(numeroOriginal + "NO es un número valido (0-50)");

  }

}