Você está na página 1de 2

1. #include <stdio.

h>
2. #include <string.h>
3.
4. int digit(char);
5.
6. int main()
7. {
8. char romanval[1000];
9. int i = 0;
10. long int number = 0;
11.
12. printf("Enter roman num (Valid digits are I, V, X, L, C, D, M):\n");
13. scanf("%s", romanval);
14. while (romanval[i])
15. {
16. if (digit(romanval[i]) 2)
17. {
18. if (digit(romanval[i]) = digit(romanval[i+1]))
19. number = number + digit(romanval[i]);
20. else
21. {
22. number = number + (digit(romanval[i + 1]) -
23. digit(romanval[i]));
24. i++;
25. }
26. i++;
27. }
28. printf("Its decimal value is : %ld", number);
29. return 0;
30. }
31.
32. int digit(char c)
33. {
34. int value = 0;
35. switch (c)
36. {
37. case 'I':
38. value = 1;
39. break;
40. case 'V':
41. value = 5;
42. break;
43. case 'X':
44. value = 10;
45. break;
46. case 'L':
47. value = 50;
48. break;
49. case 'C':
50. value = 100;
51. break;
52. case 'D':
53. value = 500;
54. break;
55. case 'M':
56. value = 1000;
57. break;
58. case '0':
59. value = 0;
60. break;
61. default:
62. value = -1;
63. }
64. return value;
65. }

Você também pode gostar