Advertisement
HyperSensualNarwhal

HEX to DEC

Dec 22nd, 2016
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.92 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using std::cout;
  4. using std::cin;
  5. using std::endl;
  6.  
  7. void main()
  8. {
  9.     setlocale(LC_ALL, "Russian");
  10.     const int size = 16;
  11.     long long int power[size], pow = 1;
  12.     long long int dec = 0;
  13.  
  14.     char hex[size] = {};
  15.     cout << "Введите шестнадцатиричное число -> "; cin >> hex;
  16.  
  17.     for (int i = 0; i < size; i++)
  18.     {
  19.         power[i] = pow;
  20.         pow *= 16;
  21.     }
  22.  
  23.     int i = 0;
  24.  
  25.     for (int i = 0; i < size; ((hex[i] == 'A') ? hex[i] = (int)10 : (hex[i] == 'B') ? hex[i] = (int)11 : (hex[i] == 'C') ? hex[i] = (int)12 : (hex[i] == 'D') ? hex[i] = (int)13 :
  26.                                (hex[i] == 'E') ? hex[i] = (int)14 : (hex[i] == 'F') ? hex[i] = (int)15 : /* (hex[i] <= 0) ? hex[i] *= (int)0 : */ hex[i] = (char)hex[i] - 48), i++);
  27.  
  28.     for (int i = size - 1, j = 0; i >= 0; i--)
  29.     {
  30.         if (hex[i] >= 0) dec = dec + ((int)hex[i] * power[j++]);
  31.     }
  32.  
  33.     cout << "Десятичное число: " << dec << endl;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement