Vorrei capire perché il programma non mi converte i numeri decimali in romani.
Sicuramente c'è qualche errore, ma non sono riuscita ad individuarlo.
Qualcuno può aiutarmi?
#include <stdio.h>
#include <stdlib.h>
int main()
{
int numero, decina, unita;
printf("Inserire un numero da 1 a 99:\n");
scanf("%d", &numero);
if (numero <= 0)
printf("Numero impossibile da scrivere in numeri romani\n");
else
{
printf("\n%d = ", numero);
decina = numero / 10;
unita = numero % 10;
if (numero >= 0)
{
switch (decina)
{
case '1': printf("X");
break;
case '2': printf("XX");
break;
case '3': printf("XXX");
break;
case '4': printf("XL");
break;
case '5': printf("L");
break;
case '6': printf("LX");
break;
case '7': printf("LXX");
break;
case '8': printf("LXXX");
break;
case '9': printf("LC");
}
}
switch (unita)
{
case '1': printf("I");
break;
case '2': printf("II");
break;
case '3': printf("III");
break;
case '4': printf("IV");
break;
case '5': printf("V");
break;
case '6': printf("VI");
break;
case '7': printf("VII");
break;
case '8': printf("VIII");
break;
case '9': printf("IX");
}
printf("\n\n");
}
return 0;
}