char* add_roman(char augend[], char addend[]) { int x = roman_to_int(augend); int y = roman_to_int(addend); int sum = x + y; return int_to_roman(sum); }
char* subtract_roman(char minuend[], char subtrahend[]) { int x = roman_to_int(minuend); int y = roman_to_int(subtrahend); int difference = x - y; return int_to_roman(difference); }
// // Глава 10. Упражнение 6. Перевод в/из Римских цифр. // #include "code.h" //------------------------------------------------------------------------------ //input number istream& operator>>(istream& is, Roman_int& r) { string num; is >> num; r = Roman_int( roman_to_int(num) ); return is; } //------------------------------------------------------------------------------ //output number ostream& operator<<(ostream& os, const Roman_int& r) { return os << int_to_roman(r.as_int()); } //------------------------------------------------------------------------------ //Converting from Roman to Arabic int roman_to_int(string num) { //MMMDCCLII = 3752 int number=r_int(num[num.size()-1]), r=0; for (int i=num.size()-1; i>0; i--) if ( r_int(num[i-1]) > r_int(num[i]) ){