Programación General > C/C++

 programa c q pase numeros decimales a romanos

(1/1)

josepe0069:
Hola a todos a ver si me podriais decir como hacer un programa en C q pase numeros decimales a numeros romanos!del 1 al 3999, solo utilizando bucles y condicional if! gracias de antemano!

camaradakoba:
yo tengo esto ojala te sirva

--- Código: C++ --- void main(){    char romano[10];    long entero;    char caracter;    int i,longitud;     cout<<"Ingrese numero romano correctamente:";    cin>>romano;        longitud = strlen(romano);    entero = 0;    for(i=longitud-1;i>=0;i--)    {   caracter = romano[i];        switch(caracter)        {        case 'M':       entero += 1000; break;        case 'D': if(i<longitud-1 && romano[i+1]== 'M')                entero -= 500;            else    entero += 500;  break;        case 'C': if(i<longitud-1 && strchr("DM", romano[i+1]))                entero -= 100;            else    entero += 100;  break;        case 'L': if(i<longitud-1 && strchr("CDM", romano[i+1]))                entero -= 50;            else    entero += 50;   break;        case 'X': if(i<longitud-1 && strchr("LCDM", romano[i+1]))                entero -= 10;            else    entero += 10;   break;        case 'V': if(i<longitud-1 && strchr("XLCDM", romano[i+1]))                entero -= 5;            else    entero += 5;    break;        case 'I': if(i<longitud-1 && strchr("VXLCDM", romano[i+1]))                entero -= 1;            else    entero += 1;    break;        }    }  

Navegación

[0] Índice de Mensajes

Ir a la versión completa