Advertisement
Guest User

Untitled

a guest
Jun 19th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.37 KB | None | 0 0
  1. //Integer To ARray
  2. int * itar(int n, int* length) //accepts integer n to be parsed and pointer length to store length of array
  3. {
  4.     int loop, index, size;
  5.     for(size = 0; size < 100; size++)
  6.     {
  7.         if(n <= pow((float)10, size))
  8.             break;
  9.     }
  10.     int *ret = new int[size];
  11.     for(loop = size - 1; loop >= 0; loop--)
  12.     {
  13.         index = size - loop - 1;
  14.         ret[index] = n / pow(10, (float)loop);
  15.         n -= ret[index] * pow(10, (float)loop);
  16.     }
  17.     *length = size;
  18.     return ret;
  19. }
  20. //Integer array To Binary-Coded Decimal
  21. bool ** itbcd(int Array[], int length)  //accepts integer array (single digits) and integer length. Returns 4-bit results for each index value
  22. {                                       //with highest bit at index 0
  23.     int size = length, loop, index;
  24.     bool ** ret = new bool*[size];
  25.  
  26.     for(index = 0; index < size; index++)
  27.     {
  28.         ret[index] = new bool[4];
  29.         for(loop = 3; loop >= 0; loop--)
  30.         {
  31.             if(Array[index] >= pow((float)2, loop))
  32.             {
  33.                 Array[index] -= pow((float)2, loop);
  34.                 ret[index][loop] = true;
  35.             }
  36.             else
  37.                 ret[index][loop] = false;
  38.         }
  39.     }
  40.     return ret;
  41. }
  42. bool *itba(char n, int *MAX_SIZE)
  43. {
  44.     *MAX_SIZE = sizeof(char) * 8 - 1;
  45.     int exp, tempExp;
  46.     bool *ret = new bool[*MAX_SIZE];
  47.  
  48.     for(exp = *MAX_SIZE; exp >= 0; exp--)
  49.     {
  50.         tempExp = pow((float)2, exp);
  51.         if(tempExp <= n)
  52.         {
  53.             n -= tempExp;
  54.             ret[exp] = true;
  55.         }
  56.         else
  57.             ret[exp] = false;
  58.     }
  59.     return ret;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement