- #include<stdio.h>
- #include<conio.h>
- #include<string.h>
- #include<MATH.H>
- int val(char c)
- {
- switch (c)
- {
- case 'I':return 1;
- case 'V':return 5;
- case 'X':return 10;
- case 'L':return 50;
- case 'C':return 100;
- case 'D':return 500;
- case 'M':return 1000;
- }
- return 0;
- }
- int convertir(char str[])
- {
- int i=0,j,k;
- for (j=0;j<strlen(str);j++)
- {
- k=val(str[j]);
- if (k<=i)
- i+=k;
- else
- i=k-i;
- }
- return abs(i);
- }
- void main()
- {
- char str[20];
- textcolor(11);
- clrscr();
- do
- {
- printf("Donnez votre chiffre romain : ");
- gets(str);
- printf("%d\n",convertir(str));
- }
- while (strlen(str));
- }
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<MATH.H>
int val(char c)
{
switch (c)
{
case 'I':return 1;
case 'V':return 5;
case 'X':return 10;
case 'L':return 50;
case 'C':return 100;
case 'D':return 500;
case 'M':return 1000;
}
return 0;
}
int convertir(char str[])
{
int i=0,j,k;
for (j=0;j<strlen(str);j++)
{
k=val(str[j]);
if (k<=i)
i+=k;
else
i=k-i;
}
return abs(i);
}
void main()
{
char str[20];
textcolor(11);
clrscr();
do
{
printf("Donnez votre chiffre romain : ");
gets(str);
printf("%d\n",convertir(str));
}
while (strlen(str));
}