In this example, you will learn to convert a hexadecimal number to octal number. The program will take a hexadecimal number as an input from the user and convert it into a octal.
Example: Hexadecimal to Octal Conversion
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 |
#include<iostream> #include<string.h> #include<math.h> using namespace std; int hex_to_oct(char hexval[]); int main() { char hexval[20],c; int n; cout<<"Enter Hexadecimal Number : "; cin>>hexval; cout<<"Octal Value of "<<hexval<<" is: "<<hex_to_oct(hexval); return 0; } int hex_to_oct(char hexval[]) { int i,len, dec=0, oct=0; for(len=0; hexval[len]!='\0'; len++); for(i=0; hexval[i]!='\0'; i++,len--) { if(hexval[i]>='0' && hexval[i]<='9') { dec= dec + (hexval[i]-'0')*pow(16,len-1); } if(hexval[i]>='A' && hexval[i]<='F') { dec = dec + (hexval[i]-55)*pow(16,len-1); } if(hexval[i]>='a' && hexval[i]<='f') { dec = dec + (hexval[i]-87)*pow(16,len-1); } } /* Now dec contains the decimal value of given hexadecimal number. */ i = 1; while(dec != 0) { oct = oct + (dec % 8) * i; dec = dec / 8; i = i * 10; } return oct; } |
1 2 |
Enter Hexadecimal Number : 7E Octal Value of 7E is: 176 |