Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <sstream>
- using namespace std;
- int main()
- {
- string hexadecimal;
- //convert hexadecimal to string characters
- int len, counter =0, variable=0, valid;
- char h;
- cout<<"This program converts hexadecimal numbers to decimal numbers."<<endl
- <<"Enter a hexadecimal number: ";
- cin>>hexadecimal;
- len = hexadecimal.length(); //find length of function
- for ( counter = 0; counter < len; counter++)
- {h =hexadecimal.at(counter); //retrieve individual character
- if (h>='0' && h<='9')
- {valid = h - '0';}
- else if (h>= 'A' && h<= 'F')
- {
- switch (h)
- {
- case('A'): valid = 10;
- break;
- case('B'): valid = 11;
- break;
- case('C'): valid = 12;
- break;
- case('D'): valid = 13;
- break;
- case('E'): valid = 14;
- break;
- case('F'): valid = 15;
- break;
- }
- } //convert letters to numbers
- else if (h>= 'a' && h<= 'f')
- {
- switch (h)
- {
- case('a'): valid = 10;
- break;
- case('b'): valid = 11;
- break;
- case('c'): valid = 12;
- break;
- case('d'): valid = 13;
- break;
- case('e'): valid = 14;
- break;
- case('f'): valid = 15;
- break;
- }
- } //convert letters to numbers
- else if (h = 'X')
- {cout<<"Goodbye";
- return 0;}
- else
- {cout<<"Invalid hexadecimal number";
- return 0;
- } //test character to be within range
- variable = variable * 16 + valid;
- }
- cout <<"The decimal number for "<<hexadecimal<<" is "<<variable;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement