Советы, трюки и секреты для Blogger.com блоггеров. Все для Blogspot. Советы, трюки и секреты для Blogger.com блоггеров. Все для Blogspot.

Перевод из арабской системы счисления в римскую (C#)

09 сентября 2009, 22:09

Дано натуральное число n (n<2000). Найти представление данного числа в римской системе счисления. (C#)

Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Lab2
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] mas1 = {1000, 900, 500,400,100,90,50,40,10,9,5,4,1};
            string[] mas2 = { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
     Console.Write("Введите число в арабской десятичной системе = ");
            int n = Convert.ToInt32(Console.ReadLine()); // вводим число с консоли
            int i;
            i = 0;  
            string s = "";
            while (n > 0)              //крутим цикл пока n>0
            {
                if (mas1[i] <= n)      // i - элемент массива арабских цифр меньше либо равен числу n то
                    n = n - mas1[i];   // от числа вычитаем его эквивалент в массиве арабском 
                    s = s + mas2[i];   // в строку записываем его римское значение
                else i++;

            }
     Console.Write("число в римской системи счисления = ");
            Console.Write(s);
            Console.ReadLine();
        }
    }
}

Перевод из арабской системы счисления в римскую (C#)