Convierte un número natural a número Romano

Programa en Qbasic

Dim I As Integer, Digit As Integer, Temp As String

ENTRADA:


Const Digits = "IVXLCDM"


Input "Numero: ", N


I = 1


Temp = ""


Do While N > 0


    Digit = N Mod 10


    N = N \ 10



    Select Case Digit


        Case 1


            Temp = Mid$(Digits, I, 1) + Temp


        Case 2


            Temp = Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Temp


        Case 3


            Temp = Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Temp


        Case 4


            Temp = Mid$(Digits, I, 2) + Temp


        Case 5


            Temp = Mid$(Digits, I + 1, 1) + Temp


        Case 6


            Temp = Mid$(Digits, I + 1, 1) + Mid$(Digits, I, 1) + Temp


        Case 7


            Temp = Mid$(Digits, I + 1, 1) + Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Temp


        Case 8


            Temp = Mid$(Digits, I + 1, 1) + Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Mid$(Digits, I, 1) + Temp


        Case 9


            Temp = Mid$(Digits, I, 1) + Mid$(Digits, I + 2, 1) + Temp


    End Select


    I = I + 2


Loop


Print "Número en Romano", Temp

GoTo ENTRADA


Inicio Entrada antigua