1 / 1 / 0
Регистрация: 19.09.2018
Сообщений: 41
1

Строка: Перевести число из римской системы счисления в десятичную систему счисления

23.04.2019, 08:41. Показов 3054. Ответов 6
Метки нет (Все метки)

Введите массив символов из 13 элементов. Перевести число из римской системы счисления в десятичную систему счисления. Поподробней если можно, спасибо заранее
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.04.2019, 08:41
Ответы с готовыми решениями:

Перевести число из системы с основанием N в десятичную систему счисления
Вводится строка и число N (от 2 до 36). Строка - это запись числа в системе счисления с основанием...

Преобразование чисел, записанных в римской нумерации, в десятичную систему счисления
Составить программу преобразования натуральных чисел, записанных в римской нумерации, в десятичную...

Перевести число из шестнадцатеричной системы счисления в десятичную
как это сделать на C# перевести число из шестнадцатеричной системы счисления в десятичную

Перевести число из двоичной системы в Фибоначчиевую систему счисления
Подскажите, можно ли на прямую перевести число из двоичной системы в Фибоначчиевую систему...

6
783 / 469 / 193
Регистрация: 08.10.2018
Сообщений: 1,462
Записей в блоге: 11
23.04.2019, 09:17 2
Цитата Сообщение от Pavel45 Посмотреть сообщение
Перевести число из
А в чём, собственно, затруднения? Я бы начал с поиска таблицы соответствия римских чисел десятичным...
Найдите такую табличку в интернете, а потом поможем.
0
1 / 1 / 0
Регистрация: 19.09.2018
Сообщений: 41
23.04.2019, 09:33  [ТС] 3
ashsvis, нашел в интернете только калькулятор, нечего более
0
783 / 469 / 193
Регистрация: 08.10.2018
Сообщений: 1,462
Записей в блоге: 11
23.04.2019, 09:58 4
Pavel45,
Строка: Перевести число из римской системы счисления в десятичную систему счисления
0
783 / 469 / 193
Регистрация: 08.10.2018
Сообщений: 1,462
Записей в блоге: 11
23.04.2019, 10:00 5
Цитата Сообщение от Pavel45 Посмотреть сообщение
Введите массив символов из 13 элементов
Вводите массив.
0
453 / 277 / 163
Регистрация: 17.04.2019
Сообщений: 1,524
23.04.2019, 11:02 6
Лучший ответ Сообщение было отмечено Pavel45 как решение

Решение

Pavel45,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
int ConvertRomanToArabicFormat(string romanNumber)
{
    Dictionary<char, int> COMPLIANCE_NUMBERS_TABLE = new Dictionary<char, int>()
    {
        { 'I', 1 }, { 'V', 5 }, { 'X', 10 }, { 'L', 50 }, { 'C', 100 }, { 'D', 500 }, { 'M', 1000 }
    };
        
    int arabicNumber = 0, currentValue = 0, previousValue = 0;
        
    romanNumber = romanNumber.ToUpper();
    for (int i = romanNumber.Length - 1; i >= 0; i--)
    {
        currentValue = COMPLIANCE_NUMBERS_TABLE[romanNumber[i]];
            
        if (currentValue >= previousValue)
        {
            arabicNumber += currentValue;
            previousValue = currentValue;
        }
        else
        {
            arabicNumber -= currentValue;
        }
    }
        
    return arabicNumber;
}
0
783 / 469 / 193
Регистрация: 08.10.2018
Сообщений: 1,462
Записей в блоге: 11
23.04.2019, 11:35 7
Pavel45, вот моя версия:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
using System.Collections.Generic;
 
namespace RomanToDecimalCorvertor
{
    class Program
    {
        static void Main(string[] args)
        {
            var list = new List<Tuple<string, int>>()
            {
                new Tuple<string, int>("MMM", 3000), new Tuple<string, int>( "MM", 2000), new Tuple<string, int>( "M", 1000),
                new Tuple<string, int>("CM", 900), new Tuple<string, int>("DCCC", 800), new Tuple<string, int>("DCC", 700),
                new Tuple<string, int>("DC", 600), new Tuple<string, int>("D", 500), new Tuple<string, int>("CD", 400),
                new Tuple<string, int>("CCC", 300), new Tuple<string, int>("CC", 200), new Tuple<string, int>("C", 100),
                new Tuple<string, int>("XC", 90), new Tuple<string, int>("LXXX", 80), new Tuple<string, int>("LXX", 70),
                new Tuple<string, int>("LX", 60), new Tuple<string, int>("L", 50), new Tuple<string, int>("XL", 40),
                new Tuple<string, int>("XXX", 30), new Tuple<string, int>("XX", 20), new Tuple<string, int>("X", 10),
                new Tuple<string, int>("IX", 9), new Tuple<string, int>("VIII", 8), new Tuple<string, int>("VII", 7),
                new Tuple<string, int>("VI", 6), new Tuple<string, int>("V", 5), new Tuple<string, int>("IV", 4),
                new Tuple<string, int>("III", 3), new Tuple<string, int>("II", 2), new Tuple<string, int>("I", 1)
            };
            var input = "MDCCLXXVI";
            var number = 0;
            foreach(var item in list)
            {
                if (!input.StartsWith(item.Item1)) continue;
                number += item.Item2;
                input = input.Substring(item.Item1.Length);
            }
            Console.WriteLine(number); // вывод: 1776
            Console.ReadKey();
        }
    }
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2019, 11:35
Помогаю со студенческими работами здесь

Перевести число из системы счисления с основанием 19 в десятичную систему счисления
Уважаемые разбирающиеся во всём этом люди, прошу вас помочь мне с этой задачей Примечания...

Перевести из римской в десятичную систему счисления
Здравствуйте!Извините,что пишу сюда по такому пустяку,но я запутался в задаче,вроде простенькой,но...

Перевести число из восьмеричной системы в десятичную систему счисления
написать программу помогите пож-та)

Перевести из римской системы счисления в десятичную (арабскую) числа XL1, MCM
подскажите как?

Перевести число из не позиционной системы счисления в двоичную или десятичную системы счисления.
Написать программу, которая переводит число из непозиционной системы счисления в двоичную или...

Системы счисления. Перевести данное натуральное число в 16-тиричную систему счисления
Составить программу перевода данного натурального числа n в 16теричную систему счисления....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru