Advertisement
Elfik

Systemy liczbowe - zamiana

Feb 21st, 2017
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.60 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. //Z 10 na 2
  7.  
  8. int main()
  9. {
  10.     int x, liczba;
  11.     cin >> x;
  12.    
  13.     for(int i = 0; ;i++)
  14.     {
  15.         if(x % 2 == 1)
  16.         {
  17.             liczba += pow(10,i);
  18.         }
  19.        
  20.         x = x/2;
  21.        
  22.         if(x == 0)
  23.         {
  24.             break;
  25.         }
  26.     }
  27.    
  28.     cout << liczba;
  29. }
  30.  
  31. //Z 2 na 10
  32. int main()
  33. {
  34.     int x, liczba;
  35.     cin >> x;
  36.    
  37.     for(int i = 0; ;i++)
  38.     {
  39.         if(x % 10 == 1)
  40.         {
  41.             liczba += pow(2,i);
  42.         }
  43.        
  44.         x = x/10;
  45.        
  46.         if(x == 0)
  47.             break;
  48.     }
  49.    
  50.     cout << liczba;
  51. }
  52.  
  53. //Z 2 na 16
  54. int main()
  55. {
  56.     string dana, wynik;
  57.     cin >> dana;
  58.    
  59.     int dl = dana.length();
  60.    
  61.     for(int i = 0; dl % 4 != 0; i++)
  62.     {
  63.         dl = dana.length();
  64.        
  65.         if(dl%4 != 0 )
  66.             dana.insert(0,"0");
  67.     }
  68.    
  69.     for(int z = 0; z < dl/4; z++)
  70.     {
  71.         string temp = dana.substr( dl-(z*4)-4,4 );
  72.        
  73.         for(int i = 0; i < 4 ;i++)
  74.         {
  75.             if(temp == "0000")
  76.                 wynik[z] = '0';
  77.             if(temp == "0001")
  78.                 wynik[z] = '1';
  79.             if(temp == "0010")
  80.                 wynik[z] = '2';
  81.             if(temp == "0011")
  82.                 wynik[z] = '3';
  83.             if(temp == "0100")
  84.                 wynik[z] = '4';
  85.             if(temp == "0101")
  86.                 wynik[z] = '5';
  87.             if(temp == "0110")
  88.                 wynik[z] = '6';
  89.             if(temp == "0111")
  90.                 wynik[z] = '7';
  91.             if(temp == "1000")
  92.                 wynik[z] = '8';
  93.             if(temp == "1001")
  94.                 wynik[z] = '9';
  95.             if(temp == "1010")
  96.                 wynik[z] = 'A';
  97.             if(temp == "1011")
  98.                 wynik[z] = 'B';
  99.             if(temp == "1100")
  100.                 wynik[z] = 'C';
  101.             if(temp == "1101")
  102.                 wynik[z] = 'D';
  103.             if(temp == "1110")
  104.                 wynik[z] = 'E';
  105.             if(temp == "1111")
  106.                 wynik[z] = 'F';
  107.         }
  108.     }
  109.    
  110.     int c = 0;
  111.     while(c <= dl / 4)
  112.     {
  113.         cout << wynik[dl / 4 - c];
  114.         c++;
  115.     }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement