Код: Выделить всё
namespace tbx
{
// Parameter `r` is treated as a "local" variable inside the
// function, where it is converted to upper case. That is why
// it is a value parameter, rather than a const reference.
int roman_numeral_to_int(std::string r); // return 0 if `r` is malformed
}
В результате римские цифры имеют неправильный формат, например VV, IXIX и XM «успешно» преобразованы. Эти примеры дают соответственно 10, 18 и 990.
Есть ли простой способ проверить строки римских цифр, которые являются входными данными для функции преобразования римских цифр? Я хотел бы, чтобы моя функция возвращала 0, когда она обнаруживает неверную римскую цифру.
Подробнее здесь: https://stackoverflow.com/questions/782 ... nputs-to-a
Мобильная версия