-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathd.cpp
More file actions
84 lines (69 loc) · 1.46 KB
/
Copy pathd.cpp
File metadata and controls
84 lines (69 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <string>
using namespace std;
int main()
{
int value;
string result;
cin >> value;
if (value >= 900 && value < 1000)
{
result.append("CM");
value -= 900;
}
if (value >= 400 && value < 500)
{
result.append("CD");
value -= 400;
}
if ((value / 500) > 0)
{
result.append(string((int)value / 500, 'D'));
value -= ((int)value / 500) * 500;
}
if (value >= 90 && value < 100)
{
result.append("XC");
value -= 90;
}
if ((value / 100) > 0)
{
result.append(string((int)value / 100, 'C'));
value -= ((int)value / 100) * 100;
}
if (value >= 40 && value < 50)
{
result.append("XL");
value -= 40;
}
if ((value / 50) > 0)
{
result.append(string((int)value / 50, 'L'));
value -= ((int)value / 50) * 50;
}
if (value == 9)
{
result.append("IX");
value = 0;
}
if ((value / 10) > 0)
{
result.append(string((int)value / 10, 'X'));
value -= ((int)value / 10) * 10;
}
if (value == 4)
{
result.append("IV");
}
if ((value / 5) > 0)
{
result.append(string((int)value / 5, 'V'));
value -= ((int)value / 5) * 5;
}
if (value > 0 && value < 4)
{
result.append(string((int)value, 'I'));
value = (int)value;
}
cout << result << endl;
}