| Код | #include <iostream.h> #include <string.h>
int main() { int num; char* roman[] = {"MMM", "D", "CCC", "L", "XXX", "V", "III"}; do{ cout << "Enter a number[1...3999], 0 - QUIT: "; cin >> num;
if(num > 0 && num < 4000) { char res[16] = "";
for(int i = 0, mult = 1000; mult; mult /= 10, i += 2) { int tmp = num / mult % 10;
switch(tmp) { case 1: case 2: case 3: strncat(res, roman[i], tmp); break; case 4: strncat(res, roman[i], 1); strcat (res, roman[i - 1]); break; case 5: case 6: case 7: case 8: strcat (res, roman[i - 1]); strncat(res, roman[i], tmp - 5); break; case 9: strncat(res, roman[i], 1); strncat(res, roman[i - 2], 1); } } cout << "Result: " << res << endl; } }while(num > 0);
return 0; } |
|