Ciao a tutti,
Ho bisogno di creare un algoritmo che dato in input un numero arabo lo trasformi in romano.
Ho già provedduto a farlo, ma una volta eseguito non mi da nnt come output ... potete aiutarmi a trovare l'errore?
codice:#include <stdio.h> #include <stdlib.h> int main() { int unita; int decine; int centinaia; int migliaia; int num; printf("Inserisci il numero che vuoi convertire:"); scanf("%d", &num); migliaia=num/1000; centinaia=(num-(migliaia*1000))/100; decine=(num-(migliaia*1000)-(centinaia*100))/10; unita=(num-(migliaia*1000)-(centinaia*100)-(decine*10)); switch(migliaia){ case '1': printf("M"); break; case '2': printf("MM"); break; case '3': printf("MMM"); break; case '4': printf("MMMM"); break; case '5': printf("MMMMM"); break; case '6': printf("MMMMMM"); break; case '7': printf("MMMMMMM"); break; case '8': printf("MMMMMMMM"); break; case '9': printf("MMMMMMMMM"); break; } switch (centinaia) { case '1': printf("C"); break; case '2': printf("CC"); break; case '3': printf("CCC"); break; case '4': printf("CD"); break; case '5': printf("D"); break; case '6': printf("DC"); break; case '7': printf("DCC"); break; case '8': printf("DCCC"); break; case '9': printf("CM"); break; } switch (decine){ 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("XC"); break; } 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"); break; } system("pause"); }

Rispondi quotando
