Converts an integer into a roman numeral. : int « Data Types « C# / C Sharp






Converts an integer into a roman numeral.

    
//http://advancementvoyage.codeplex.com/
//Microsoft Public License (Ms-PL)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AdvancementVoyage.Magic.Utility
{
    /// <summary>
    /// Extension methods for the int type.
    /// </summary>
    public static class IntExtensions
    {
        /// <summary>
        /// Converts an integer into a roman numeral.
        /// </summary>
        /// <param name="number">
        /// The number being transformed.
        /// </param>
        /// <returns>
        /// A string representation of the number's corresponding roman numeral.
        /// </returns>
        public static string ToRomanNumeral(this int number)
        {

            var retVal = new StringBuilder(5);
            var valueMap = new SortedDictionary<int, string>
                               {
                                   { 1, "I" },
                                   { 4, "IV" },
                                   { 5, "V" },
                                   { 9, "IX" },
                                   { 10, "X" },
                                   { 40, "XL" },
                                   { 50, "L" },
                                   { 90, "XC" },
                                   { 100, "C" },
                                   { 400, "CD" },
                                   { 500, "D" },
                                   { 900, "CM" },
                                   { 1000, "M" },
                               };

            foreach (var kvp in valueMap.Reverse())
            {
                while (number >= kvp.Key)
                {
                    number -= kvp.Key;
                    retVal.Append(kvp.Value);
                }
            }

            return retVal.ToString();
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.Assign value to int variable
2.Call methods from primitive data types
3.Calculating the product of three integers.
4.Comparing integers using if statements, equality operators, and relational operators.
5.demonstrates variablesdemonstrates variables
6.Assing value to int valueAssing value to int value
7.Calculate: int and doubleCalculate: int and double
8.Size of int, double, char and boolSize of int, double, char and bool
9.displays a conversion table of Fahrenheit to Celsiusdisplays a conversion  
   table of Fahrenheit to Celsius
10.Some Operator on int
11.Using Integers
12.Using Variables
13.Convert string value to integer by using the int.TryParse
14.Use CultureInfo int ToString method
15.Integer OverFlow
16.Catch OverflowException Exception
17.Do calculation with int variable
18.Format int in Console.WriteLine
19.Use CultureInfo in int.ToString method
20.Use #, % and in int format
21.int based Fahrenheit and Celsius (Centigrade) Scales
22.int array property
23.Parse int value
24.The precision specifier controls the number of significant digits or zeros to the right of a decimal:
25.Int value To Hex char
26.Get the digit-length of an int value
27.Max/Min for int and double values
28.Read sync safe int 32
29.Write Synch safe Int32
30.Calculate average for a list of integer values with params int[] values
31.Int extension Convert integer to boolean, is it even, is it positive
32.Get Ordinal
33.Output with x8 format
34.Int32.MaxValue and Int32.MinValue
35.Convert Bytes To UInt
36.Compress UInt
37.Decompress UInt
38.Write Compressed UInt32
39.Read Compressed UInt32
40.Compress Int
41.Is even