Advertisement
sesquiipedalian

task_3

Sep 24th, 2022
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.72 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.     int n;
  7.     cin >> n;
  8.     int binary_n = 0, k = 1;
  9.  
  10.     //перевод в двоичную
  11.     while (n) {
  12.         binary_n += (n % 2) * k;
  13.         k *= 10;
  14.         n /= 2;
  15.     }
  16.  
  17.     //разворот числа
  18.     int mod_n, reversed_n = 0;
  19.  
  20.     while (binary_n != 0) {
  21.         mod_n = binary_n % 10;
  22.         reversed_n = (reversed_n * 10) + mod_n;
  23.         binary_n /= 10;
  24.     }
  25.  
  26.     //число из двоичной в 10-ю
  27.     int answer_n = 0, prom = 1;
  28.  
  29.     while (reversed_n) {
  30.         int mod_10 = reversed_n % 10;
  31.         reversed_n /= 10;
  32.         answer_n += mod_10 * prom;
  33.         prom *= 2;
  34.     }
  35.    
  36.     cout << answer_n;
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement