एक इनपुट के रूप में एक ऑक्टल नंबर के साथ दिए गए, कार्य दिए गए ऑक्टल नंबर को एक दशमलव संख्या में बदलना है।
कंप्यूटर में दशमलव संख्या को आधार 10 से दर्शाया जाता है और अष्टक संख्या को आधार 8 से 0 से शुरू होकर 7 तक दर्शाया जाता है जबकि दशमलव संख्या 0 – 9 से शुरू होने वाला कोई भी अंक हो सकता है।
अष्टक संख्या को दशमलव संख्या में बदलने के लिए इन चरणों का पालन करें -
- हम शेष से दाएं से बाएं से शुरू होने वाले अंकों को निकालेंगे और फिर इसे 0 से शुरू होने वाली घात से गुणा करेंगे और 1 से (अंकों की संख्या) तक बढ़ाएंगे - 1
- चूंकि हमें ऑक्टल से बाइनरी में रूपांतरण करने की आवश्यकता है, इसलिए शक्ति का आधार 8 होगा क्योंकि ऑक्टल का आधार 8 होता है।
- दिए गए इनपुट के अंकों को आधार और शक्ति से गुणा करें और परिणामों को संग्रहीत करें
- अंतिम परिणाम प्राप्त करने के लिए सभी गुणा किए गए मानों को जोड़ें जो एक दशमलव संख्या होगी।
नीचे एक अष्टक संख्या को दशमलव संख्या में बदलने का सचित्र निरूपण है।
उदाहरण
Input-: 451 1 will be converted to a decimal number by -: 1 X 8^0 = 1 5 will be converted to a decimal number by -: 5 X 8^1 = 40 4 will be converted to a decimal number by -: 4 X 8^2 = 256 Output-: total = 0 + 40 + 256 = 10
एल्गोरिदम
Start Step 1-> declare function to convert octal to decimal int convert(int num) set int temp = num set int val = 0 set int base = 1 Set int count = temp Loop While (count) Set int digit = count % 10 Set count = count / 10 Set val += digit * base Set base = base * 8 End return val step 2-> In main() set int num = 45 Call convert(num) Stop
उदाहरण
#include <iostream> using namespace std; //convert octal to decimal int convert(int num) { int temp = num; int val = 0; int base = 1; int count = temp; while (count) { int digit = count % 10; count = count / 10; val += digit * base; base = base * 8; } return val; } int main() { int num = 45; cout <<"after conversion value is "<<convert(num); }. है
आउटपुट
अगर हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा
after conversion value is 37