Размещено 5 лет назад по предмету
Информатика
от nikita000999
Задание.Для записи римскими цифрами используются символы I, V, X, L, С, D, М, обозначающие соответственно числа 1, 5, 10, 50, 100, 500, 1000. Составить программу, которая запись любого данного числа п (п ≤ 3999) арабскими цифрами переводила бы в запись римскими цифрам. На С++.
string RomeZifr[13] = { "I","IV","V","IX","X","XL","L","XC","C","CD","D","CM","M" };
int ArabZifr[13] = { 1,4,5,9,10,40,50,90,100,400,500,900,1000 };
int ara,i=13;//iдля цикла
string S=" ";//s=для вывода числа на роме
cout << "Ведите число<=3999";
cin >> ara;
while (ara > 0) {
while (ArabZifr[i] > ara)
i -= 1;//уменьшаем
S = S + RomeZifr[i];
ara -= ArabZifr[i];
}
cout << "Число=" << S;
Может можно по другому?У меня она не работает.