This is a C# .NET data type representation of the numeric system used in ancient Rome, employing combinations of letters from the Latin alphabet. Permissible values fall within the range of 1 - 3,999.
This package is available as a Nuget package on nuget.org.
I, II, III, IV, V, VI, VII, VIII, IX, X ...
Several convenience constructors give you the ability to create a roman numeral data type using either a numeric value or a roman numeral string. Once a RomanNumeral
object is created, its value is static for the duration of its lifetime.
var numberOne = new RomanNumeral(411); // CDXI
var numberTwo = new RomanNumeral("MCMXC"); // 1990
Console.WriteLine(new RomanNumeral(31)); // XXXI
Convert a roman numeral string to a numeric value.
int value;
if (RomanNumeral.TryParse(romanNumeral, out value))
{
// Do something with the converted value.
}
You can treat a RomanNumeral type just like you would treat any other numeric type to perform math operations.
var numberOne = new RomanNumeral(10);
var numberTwo = new RomanNumeral(5);
Console.WriteLine(numberOne * numberTwo); // L
Console.WriteLine(numberOne / numberTwo); // II
Console.WriteLine(numberOne + numberTwo); // XV
Console.WriteLine(numberOne - numberTwo); // V