O primeiro passo é pegar o número decimal e ir divindindo ele para obter as os algaristmos romanos.
Como vc sabe, os símbolos no sistema romano são M, D, etc.
M significa 1000, D signidica 500, etc.
1 - Pegue o número, divida por 1000. Isso lhe dará a quantidade de Ms do número.
2 - Pegue o resto da divisão anterior, divida por 500. Isso lhe dará a quantidade Ds do número.
3 - Faça o mesmo processo até chegar na divisão por 1.
4 - Com isso vc tem a quantidade de Ms, Ds, …, Is.
5 - Com as quantidades, vc precisa fazer os agrupamentos. Por exemplo. 9 viraria um V mais quatro Is, mas como vc sabe, 9 em romanos é IX. Então vc tem que reorganizar “VIIII” (que está errado) para virar “IX”.
Seu professor não deu um limite para conversão? Digo isso pq com esse algoritmo vc chega até 3999. A partir do 4000 vc usa o símbolo “barra” em cima do número para indicar multiplicação por 1000. Cada multiplicação por 1000 é uma barra a mais. E não dá p/ fazer isso no console e é uma baita de uma perda de tempo fazer isso como Java2D por exemplo…
Outra coisa, talvez ele não esteja exigindo que haja o agrupamento dos algarismos, então o seu programa vai estar pronto assim que chegar no passo 4 acima.
[]´s
P.S. 1: Opsss. D é 500. L é 50. Falha a minha :oops:
P.S. 2: Lembre-se que a não existe símbolo para zero nos algaristmos romanos (foram os árabes que inventaram a notação para o zero).
P.S. 3: Não existem números negativos em romanops tbm.