Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी प्रोग्राम रोमन संख्याओं को दशमलव संख्याओं में बदलने के लिए

C भाषा में रोमन संख्याओं को दशमलव संख्याओं में बदलने के लिए एल्गोरिथ्म नीचे दिया गया है -

एल्गोरिदम

चरण 1 - प्रारंभ करें

चरण 2 - रनटाइम पर रोमन अंक पढ़ें

चरण 3 - लंबाई:=strlen(roman)

चरण 4 - i =0 से लंबाई-1 के लिए करें

चरण 4.1 - स्विच (रोमन[i])

चरण 4.1.1 - केस 'एम':

चरण 4.1.2 - केस 'एम':

चरण 4.1.2.1 - घ [i]:=1000

चरण 4.1.3 - केस 'डी':

चरण 4.1.4 - केस 'डी':

चरण 4.1.4.1 - घ [i]:=500

चरण 4.1.5 - केस 'सी':

चरण 4.1.6 - केस 'सी':

चरण 4.1.6.1 - घ [i]:=100

चरण 4.1.7 - केस 'एल':

चरण 4.1.8 - केस 'एल':

चरण 4.1.8.1 - घ[i]:=50

चरण 4.1.9 - केस 'x':

चरण 4.1.10 - केस 'X':

चरण 4.1.10.1 - घ[i]:=10

चरण 4.1.11 - केस 'v':

चरण 4.1.12 - केस 'वी':

चरण 4.1.12.1 - घ[i]:=5

चरण 4.1.13 - केस 'i':

चरण 4.1.14 - केस 'I':

चरण 4.1.14.1 - घ[i]:=1

चरण 5 - i =0 से लंबाई-1 के लिए करें

चरण 5.1 - यदि (i==length-1) या (d[i]>=d[i+1]) तो

चरण 5.1.1 - डेसी +=डी[i]

चरण 5.2 - अन्य

चरण 5.2.1 - डेसी -=डी[i]

चरण 6 - रोमन अंक के दशमलव समकक्ष को प्रिंट करें

चरण 7 - रुकें

कार्यक्रम

रोमन संख्याओं को दशमलव संख्याओं में बदलने के लिए C प्रोग्राम निम्नलिखित है:-

#include <stdio.h>
#include <conio.h>
main(){
   char roman[30];
   int deci=0;
   int length,i,d[30];
   printf("The Roman equivalent to decimal\n");
   printf("Decimal:.........Roman\n");
   printf("%5d............%3c\n",1,'I');
   printf("%5d............%3c\n",5,'V');
   printf("%5d............%3c\n",10,'X');
   printf("%5d............%3c\n",50,'L');
   printf("%5d............%3c\n",100,'C');
   printf("%5d............%3c\n",500,'D');
   printf("%5d............%3c\n",1000,'M');
   printf("Enter a Roman numeral:");
   scanf("%s",roman);
   length=strlen(roman);
   for(i=0;i<length;i++){
      switch(roman[i]){
         case 'm':
         case 'M': d[i]=1000; break;
         case 'd':
         case 'D': d[i]= 500; break;
         case 'c':
         case 'C': d[i]= 100; break;
         case 'l':
         case 'L': d[i]= 50; break;
         case 'x':
         case 'X': d[i]= 10; break;;
         case 'v':
         case 'V': d[i]= 5; break;
         case 'i':
         case 'I': d[i]= 1;
      }
   }
   for(i=0;i<length;i++){
      if(i==length-1 || d[i]>=d[i+1])
         deci += d[i];
      else
         deci -= d[i];
   }
   printf("The Decimal equivalent of Roman numeral %s is %d", roman, deci);
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

The Roman equivalent to decimal
Decimal:.........Roman
1............ I
5............ V
10............ X
50............ L
100............ C
500............ D
1000............ M
Enter a Roman numeral: M
The Decimal equivalent of Roman Numeral M is 1000

  1. पायथन में रोमन अंक को पूर्णांक में बदलने का कार्यक्रम?

    मान लीजिए हमारे पास रोमन अंक है; हमें इसे संख्या में बदलना होगा। जैसा कि हम जानते हैं कि रोमन अंक को बाएं से दाएं सबसे बड़े से कम से कम प्रतीकों द्वारा दर्शाया जाता है, केवल एक अपवाद तब होता है जब एक प्रतीक से कम का प्रतिनिधित्व करता है। कुछ रोमन अंकों के प्रतीक अर्थ इस प्रकार हैं: एम:1000 डी:

  1. हेक्स स्ट्रिंग को दशमलव में बदलने के लिए पायथन प्रोग्राम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक हेक्साडेसिमल स्ट्रिंग दी गई है, हमें इसे इसके दशमलव समकक्ष में बदलने की जरूरत है। समस्या को हल करने के लिए हमारे पास दो दृष्टिकोण हैं- क्रूर-बल दृष्टिकोण अंतर्निहित मॉड्यूल का उपयोग करना ब्रूट-फोर्स मेथड

  1. पायथन प्रोग्राम में दशमलव को बाइनरी नंबर में बदलें

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक दशमलव संख्या दी गई है, हमें इसे इसके बाइनरी समकक्ष में बदलने की जरूरत है। दी गई समस्या को हल करने के लिए दो दृष्टिकोण हैं। आइए उन्हें एक-एक करके देखें- पुनरावर्ती दृष्टिकोण उदाहरण def DecimalToBinary(num): &