Войти
Регистрация
Спроси ai-bota
vladaandreeva2
18.03.2023 05:29
Как соединить в одну папку
Нажмите на рекламу ниже и сразу увидите ответ
↓
Популярные вопросы:
герман78
15.09.2021 02:42
Для групповых операций с файлами используются маски имен файлов. маска представляет собой последовательность букв, цифр и прочих допустимых в именах файлов символов,...
upf300804
15.09.2021 02:42
Проверить 3-ех значеное на честность и на сумму его цифр,если четн, если нет то произведение его цифр...
Kirillastrovskiy
23.01.2023 13:55
1.Написать программу для вычисления выражения у=: X/4+x*x*x2.2.Coставить программу сортировки по возрастанию значений трех переменных, А,В,С...
surgut186rus
24.01.2021 14:05
Что будет в результате команды в программе паскаль: write ( a + b = x) a:= 2*4 b:= a -- 6 write (a,b)...
aliksondrrr3
31.03.2021 02:01
Чему будет равно значение переменной i после выполнения следующего фрагмента программы при n = 82 ? … int i = 0, k = 4; int n; scanf( %d ,& n); do {i++; } while...
Саша030612
01.09.2020 04:01
1)Маша учит сонату Бетховена. К какому виду языков относятся ноты? Символьные языки Формальные языки Естественные языки Настоящие языки 2)Музыкант услышанную музыку...
mai31
09.10.2020 23:58
Как представлено десятичное число 543? в 1)1016^8 2)1037^8 3)31f^16 4)1100101110^2...
Metalgitarist23
26.06.2020 18:25
Есть ли разница между сервисом и службой поддержкой пользователей?...
Enjoy167
11.10.2022 08:33
что является основой программного обеспечения лс? ...
ГришаМститель
01.05.2022 13:03
Переведите в десятичную систему счисления следующие числа: 1001101(2) 342(8) a26(16) переведите в десятичные числа в заданные системы счисления: 36- а(2) 197- а(8)...
Ответ:
insaimner
15.10.2021 21:10
#include<iostream> #include<string> using std::string; string func(int num, string, string, string); int main(int argc, char argv[]) { system("chcp 1251>0"); std::cout << "Введите число не большее 3999: "; int arabien_num; if (!(std::cin >> arabien_num) || (arabien_num > 3999)) { std::cerr << "Невозможно инициализировать число!" << std::endl; exit(1); } std::string rome_num; rome_num += func(arabien_num / 1000, "", "", "M"); arabien_num %= 1000; rome_num += func(arabien_num / 100, "M", "D", "C"); arabien_num %= 100; rome_num += func(arabien_num / 10, "C", "L", "X"); arabien_num %= 10; rome_num += func(arabien_num , "X", "V", "I"); std::cout << rome_num << std::endl; return 0; } string func(int num, string hi, string re, string lo) { switch(num) { case 9: return lo + hi; case 8: return re + lo + lo + lo; case 7: return re + lo + lo; case 6: return re + lo; case 5: return re; case 4: return lo + re; case 3: return lo + lo + lo; case 2: return lo + lo; case 1: return lo; case 0: return ""; } }
0,0
(0 оценок)
Ответ:
kasym2
15.10.2021 21:10
#include <iostream>
#include <string>
using namespace std;
string solve(int num, int divd)
{
string result = "";
int count = 0;
while(num)
{
count = num / divd;
if(count)
{
num %= divd;
for (int i = 0; i < count; i++)
switch(divd)
{
case 1000:
{
result+="M";
break;
}
case 900:
{
result+="CM";
break;
}
case 800:
{
result+="DCC";
break;
}
case 700:
{
result+="DCC";
break;
}
case 600:
{
result+="DC";
break;
}
case 500:
{
result+="D";
break;
}
case 400:
{
result+="CD";
break;
}
case 300:
{
result+="CCC";
break;
}
case 200:
{
result+="CC";
break;
}
case 100:
{
result+="C";
break;
}
case 90:
{
result+="XC";
break;
}
case 80:
{
result+="LXXX";
break;
}
case 70:
{
result+="LXX";
break;
}
case 60:
{
result+="LX";
break;
}
case 50:
{
result+="L";
break;
}
case 40:
{
result+="XL";
break;
}
case 30:
{
result+="XXX";
break;
}
case 20:
{
result+="XX";
break;
}
case 10:
{
result+="X";
break;
}
case 9:
{
result+="IX";
break;
}
case 8:
{
result+="VIII";
break;
}
case 7:
{
result+="VII";
break;
}
case 6:
{
result+="VI";
break;
}
case 5:
{
result+="V";
break;
}
case 4:
{
result+="IV";
break;
}
case 3:
{
result+="III";
break;
}
case 2:
{
result+="II";
break;
}
case 1:
{
result+="I";
break;
}
}
}
if(divd <= 1000 && divd > 100) divd-=100;
else if(divd <= 100 && divd > 10) divd-=10;
else divd-=1;
}
return result;
}
int main()
{
int num,count;
cin >> num;
if(num <= 3999) cout << solve(num,1000);
else cout << "Incorrect input.";
return 0;
}
0,0
(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку
О НАС
О нас
Блог
Карьера
Условия пользования
Авторское право
Политика конфиденциальности
Политика использования файлов cookie
Предпочтения cookie-файлов
СООБЩЕСТВО
Сообщество
Для школ
Родителям
Кодекс чести
Правила сообщества
Insights
Стань помощником
ПОМОЩЬ
Зарегистрируйся
Центр помощи
Центр безопасности
Договор о конфиденциальности полученной информации
App
Начни делиться знаниями
Вход
Регистрация
Что ты хочешь узнать?
Спроси ai-бота