Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fiz um código para converter números reais em números romanos, e ele está executando. Porém não está correto, pois ele só converte o número mais a direita e que não for 0.
Não sei porque não está concatenando os resultados anteriores, como por exemplo: se digito 1281 ele vai me mostra: "I", já se digito 1000 ele me mostra "M" ou então 300 ele mostra CCC. O que pode estar acontecendo? Segue código abaixo:
<script type="text/javascript">
var nro = parseInt (prompt ("informe o número para ser convertido", "Digite aqui!"));
var res = ""
if((nro / 100) / 10 == 1){
res += 'M';
} else if ((nro / 100) / 10 == 2){
res += 'MM';
} else if ((nro / 100) / 10 == 3){
res += 'MMM';
} else if ((nro / 100) / 10 == 4){
res += 'MMMM';
} else if ((nro / 100) / 10 == 5){
res += 'MMMMM';
} else if ((nro / 100) / 10 == 6){
res += 'MMMMMM';
} else if ((nro / 100) / 10 == 7){
res += 'MMMMMMM';
} else if ((nro / 100) / 10 == 8){
res += 'MMMMMMMM';
} else if ((nro / 100) / 10 == 9){
res += 'MMMMMMMMM';
} else{}
if ((nro / 100) % 10 == 1 || nro / 100 == 1){
res += 'C';
} else if ((nro / 100) % 10 == 2 || nro / 100 == 2){
res += 'CC';
} else if ((nro / 100) % 10 == 3 || nro / 100 == 3){
res += 'CCC';
} else if ((nro / 100) % 10 == 4 || nro / 100 == 4){
res += 'CD';
} else if ((nro / 100) % 10 == 5 || nro / 100 == 5){
res += 'D';
} else if ((nro / 100) % 10 == 6 || nro / 100 == 6){
res += 'DC';
} else if ((nro / 100) % 10 == 7 || nro / 100 == 7){
res += 'DCC';
} else if ((nro / 100) % 10 == 8 || nro / 100 == 8){
res += 'DCCC';
} else if ((nro / 100) % 10 == 9 || nro / 100 == 9){
res += 'CM';
} else {}
if ((nro / 10) % 10 == 1 || nro / 10 == 1){
res += 'X';
} else if ((nro / 10) % 10 == 2 || nro / 10 == 2){
res += 'XX';
} else if ((nro / 10) % 10 == 3 || nro / 10 == 3){
res += 'XXX';
} else if ((nro / 10) % 10 == 4 || nro / 10 == 4){
res += 'XL';
} else if ((nro / 10) % 10 == 5 || nro / 10 == 5){
res += 'L';
} else if ((nro / 10) % 10 == 6 || nro / 10 == 6){
res += 'LX';
} else if ((nro / 10) % 10 == 7 || nro / 10 == 7){
res += 'LXX';
} else if ((nro / 10) % 10 == 8 || nro / 10 == 8){
res += 'LXXX';
} else if ((nro / 10) % 10 == 9 || nro / 10 == 9){
res += 'XC';
} else{}
if (nro % 10 == 1 || nro / 1 == 1){
res += 'I';
} else if (nro % 10 == 2 || nro / 1 == 2){
res += 'II';
} else if (nro % 10 == 3 || nro / 1 == 3){
res += 'III';
} else if (nro % 10 == 4 || nro / 1 == 4){
res += 'IV';
} else if (nro % 10 == 5 || nro / 1 == 5){
res += 'V';
} else if (nro % 10 == 6 || nro / 1 == 6){
res += 'VI';
} else if (nro % 10 == 7 || nro / 1 == 7){
res += 'VII';
} else if (nro % 10 == 8 || nro / 1 == 8){
res += 'VIII';
} else if (nro % 10 == 9 || nro / 1 == 9){
res += 'IX';
} else{}
document.write (res);
</script>Carregando comentários...