avr39-ripe

dec2hex

Jun 18th, 2019
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.74 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. int main()
  4. {
  5.     int decimalNum = 0;
  6.     int hexPart = 0;
  7.     char hexChar = 0;
  8.     char hexH = 0;
  9.     char hexL = 0;
  10.  
  11.     do
  12.     {
  13.         std::cout << "Enter decimal number from 0 to 255\n";
  14.         std::cin >> decimalNum;
  15.         if (decimalNum < 0 || decimalNum > 255)
  16.         {
  17.             std::cout << "Error: Out of range 0..255, try again!\n";
  18.         }
  19.     } while (decimalNum < 0 || decimalNum > 255);
  20.  
  21.     while (decimalNum > 0)
  22.     {
  23.         hexPart = decimalNum % 16;
  24.  
  25.         if (hexPart < 10)
  26.         {
  27.             hexChar = '0' + hexPart;
  28.         }
  29.         else
  30.         {
  31.             hexChar = 'A' + hexPart - 10;
  32.         }
  33.  
  34.         std::cout << "hexChar=" << hexChar << std::endl;
  35.         decimalNum / 16 == 0 ? hexH = hexChar : hexL = hexChar;
  36.  
  37.         decimalNum /= 16;
  38.     }
  39.     std::cout << "HEX: " << hexH << hexL << "\n";
  40. }
Advertisement
Add Comment
Please, Sign In to add comment