Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Alex Dzot
3 / 3 / 0
Регистрация: 12.01.2010
Сообщений: 34
#1

Преобразование арабских чисел в римские - C++

05.02.2010, 01:09. Просмотров 1218. Ответов 1
Метки нет (Все метки)

2. Программа для преобразования числа, введённого арабскими цифрами в римское число, и наоборот.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2010, 01:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразование арабских чисел в римские (C++):

Из арабских чисел в римские - C++
Функция для перевода из арабских чисел в римские. Как можно заменить устаревший sprintf? string _func_arab_to_roman(int arab){ ...

Перевод арабских чисел в римские - C++
вообщем задание такое: написать код который из простых чисел преобразовал бы в римские, и потом можно было бы с ними делать простые...

Перевод арабских чисел в римские - C++
Всем привет. Не получается решить задачу в С++ Кто может помогите если не сложно;. Для записи римскими цифрами используются...

Из арабских чисел в римские Visual C++ - C++
Здравствуйте! =) Знаю, что тема заезжена до дыр, но ничего стоящего на с++ я не нашел. В основном все написано либо на паскале с делфи,...

Программа перевода арабских чисел в римские - C++
Написать программу, которая переводит положительное число введено в десятичном виде в римские числа и наоборот. Объясните пожалуйста как...

Перевод чисел из арабских в римские. Пределы int - C++
Есть программа: #include <stdio.h>; #include <conio.h>; int roman(int,int,char); main() { int a,z; clrscr(); while (z!=1){ ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter
9702 / 2457 / 47
Регистрация: 06.03.2009
Сообщений: 8,503
05.02.2010, 01:27 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
наверное как то так.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
char *a2roman (int value, char *c1, char *c2, char *c3);
 
int main (void)
{
int arabicalNumeral = 1;
int result;
char roman[15] = "";
do
{
clrscr();
textcolor(GREEN);
cprintf("..::Programma dlya preobrazovaniyz arabskih chisel v rimskie::..");
cprintf("\n\r============================================== ==================");
textcolor(RED);
cprintf("\n\n\rVvedite chislo ot 1 do 3000: ");
scanf ("%d", &arabicalNumeral);
}
while ((arabicalNumeral < 1) || (arabicalNumeral > 3000));
if ((arabicalNumeral <= 3000) && (arabicalNumeral >= 1000))
{
result = arabicalNumeral / 1000;
strcat (roman, a2roman(result, "M", " ", " "));
arabicalNumeral -= (result * 1000);
}
if ((arabicalNumeral < 1000) && (arabicalNumeral >= 100))
{
result = arabicalNumeral / 100;
strcat (roman, a2roman(result, "C", "D", "M"));
arabicalNumeral -= (result * 100);
}
if ((arabicalNumeral < 100) && (arabicalNumeral >= 10))
{
result = arabicalNumeral / 10;
strcat (roman, a2roman(result, "X", "L", "C"));
arabicalNumeral -= (result * 10);
}
if ((arabicalNumeral < 10) && (arabicalNumeral >= 1))
{
strcat (roman, a2roman(arabicalNumeral, "I", "V", "X"));
}
textcolor(LIGHTBLUE);
cprintf("Eto chiclo v rimskom napisanii: %s\n\n", roman);
textcolor(YELLOW);
cprintf("\n\r ...Press any key to exit... ");
getch();
return 0;
}
или так
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
#include <stdio.h>
#include <stdlib.h>
 
#define NUMS 13
 
char* to_roman( unsigned int num, char* buff )
{
int p = NUMS;
unsigned int a_num[NUMS] = {1,4,5,9,10,40,50,90,100,400,500,900,1000};
char* r_str[NUMS] = {"I","IV","V","IX","X","XL","L","XC","C","CD","D","CM","M"};
 
*buff = '\0';
while (p--)
while (num >= a_num[p])
{
num -= a_num[p];
strcat( buff, r_str[p] );
}
 
return buff;
}
 
int main( void )
{
char* roman;
unsigned int arabian = 3451;
 
roman = (char*)malloc(256);
printf( "%i: %s\n", arabian, to_roman( arabian, roman ));
free( roman );
 
return 0;
}
3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2010, 01:27
Привет! Вот еще темы с ответами:

Составить программы для перевода арабских чисел в римские и для обратной операции - C++
Составить программы для перевода арабских чисел в римские и для обратной операции. Например, 255 = CCLV = сто + сто + пятьдесят + пять...

Перевод арабских цифр в римские с++ - C++
Подскажите как перевести арабские цифры в римские... Например 12345 -&gt; I II III IV V Заранее спасибо

Составить программу для перевода арабских чисел в римские и для зворотньох операции. Например 255 = ССЛВ = СТО + СТО + Пятьдесят + Пять - C++
Составить программу для перевода арабских чисел в римские и для зворотньох операции. Например 255 = ССЛВ = СТО + СТО + Пятьдесят + Пять ...

Преобразование чисел - C++
Доброго времени! Господа, есть функция или оператор в C++ которая берет с регистра или памяти значение переменной и выводит его...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru