RE:ayuda porfa! es simple
En visual basic, espero te de una idea
function devuelve_unidad(numero) as string
select case numero
case 1:
devuelve_unidad = "I"
case 2:
devuelve_unidad = "II"
case 3:
devuelve_unidad = "III"
case 4:
devuelve_unidad = "IV"
case 5:
devuelve_unidad = "V"
case 6:
devuelve_unidad = "VI"
case 7:
devuelve_unidad = "VII"
case 8:
devuelve_unidad = "VIII"
case 9:
devuelve_unidad = "IX"
case else:
devuelve_unidad = ""
end select
end function
function devuelve_decena(numero) as string
select case numero
case 1:
devuelve_decena= "X"
case 2:
devuelve_decena= "XX"
case 3:
devuelve_decena= "XXX"
case 4:
devuelve_decena= "XL"
case 5:
devuelve_decena= "L"
case 6:
devuelve_decena= "LX"
case 7:
devuelve_decena= "LXX"
case 8:
devuelve_decena= "LXXX"
case 9:
devuelve_decena= "XC"
case else:
devuelve_decena = ""
end select
end function
function devuelve_centena(numero) as string
select case numero
case 1:
devuelve_centena= "C"
case 2:
devuelve_centena= "CC"
case 3:
devuelve_centena= "CCC"
case 4:
devuelve_centena= "CD"
case 5:
devuelve_centena= "D"
case 6:
devuelve_centena= "DC"
case 7:
devuelve_centena= "DCC"
case 8:
devuelve_centena= "DCCC"
case 9:
devuelve_centena= "CM"
case else:
devuelve_centena = ""
end select
end function
sub principal()
dim numero as string
dim resultado as string
numero = '35'
if val(numero) > 100 then
msgbox "El numero es mas grande que 100"
end
end if
largo = len(numero)
select case largo
case 1:
resultado = devuelve_unidad(val(mid(numero, 1,1)))
case 2:
resultado = devuelve_decena(val(mid(numero, 1,1))) &
devuelve_unidad(val(mid(numero, 2,1)))
case 3:
resultado = devuelve_centena(val(mid(numero, 1,1))) & devuelve_decena(val(mid(numero, 2,1))) &
devuelve_unidad(val(mid(numero, 3,1)))
case else :
resultado = ""
end select
msgbox resultado
end sub