Program to take numbers (up to 4 digits) as input and give equivalent Roman Numerals as output.
#include<iostream.h>
#include<conio.h>
#include<string.h>
void main()
{
char roman['z'];
int year,temp;
cout<<"Enter a year to convert into Roman Numeral: ";
cin>>year;
strcpy(roman,"Roman Numeral: ");
temp=year/1000;
year%=1000;
switch(temp)
{
case 1: strcat(roman,"M");break;
case 2: strcat(roman,"MM");break;
case 3: strcat(roman,"MMM");break;
case 4: strcat(roman,"MMMM");break;
case 5: strcat(roman,"MMMMM");break;
case 6: strcat(roman,"MMMMMM");break;
case 7: strcat(roman,"MMMMMMM");break;
case 8: strcat(roman,"MMMMMMMM");break;
case 9: strcat(roman,"MMMMMMMMM");break;
}
temp=year/100;
year%=100;
switch(temp)
{
case 1: strcat(roman,"C");break;
case 2: strcat(roman,"CC");break;
case 3: strcat(roman,"CCC");break;
case 4: strcat(roman,"CD");break;
case 5: strcat(roman,"D");break;
case 6: strcat(roman,"DC");break;
case 7: strcat(roman,"DCC");break;
case 8: strcat(roman,"DCCC");break;
case 9: strcat(roman,"CM");break;
}
temp=year/10;
year%=10;
switch(temp)
{
case 1: strcat(roman,"X");break;
case 2: strcat(roman,"XX");break;
case 3: strcat(roman,"XXX");break;
case 4: strcat(roman,"XL");break;
case 5: strcat(roman,"L");break;
case 6: strcat(roman,"LX");break;
case 7: strcat(roman,"LXX");break;
case 8: strcat(roman,"LXXX");break;
case 9: strcat(roman,"XC");break;
}
temp=year/1;
year%=1;
switch(temp)
{
case 1: strcat(roman,"I");break;
case 2: strcat(roman,"II");break;
case 3: strcat(roman,"III");break;
case 4: strcat(roman,"IV");break;
case 5: strcat(roman,"V");break;
case 6: strcat(roman,"VI");break;
case 7: strcat(roman,"VII");break;
case 8: strcat(roman,"VIII");break;
case 9: strcat(roman,"IX");break;
}
cout<<endl<<roman;
getch();
}
No comments:
Post a Comment