Битовые операции





Битовые операции над десятичными числами:
 
Два числа переводятся в двоичную систему счисления. Если количество двоичных разрядов не совпадает, то меньшее число дополняется ведущими нулями так, чтобы количество двоичных разрядов совпадало.
Далее для каждого двоичного разряда выполняется необходимая функция, аргументами которой являются два значения соответствующих разрядов. Результат функции записывается в тот же двоичный разряд. Результат будет являться каким то двоичным числом, которое затем переводится в десятичную систему счисления. Это число и будет ответом.
 
Например, необходимо вычислить 41 or 13
41(10) = 101001(2)
13(10) = 1101(2). Дополним ведущими нулями. 001101(2)
 
101001
001101
______
101101
 
101101(2) = 45(10)
 
41 or 13 = 45
 

Task
Есть функция, которая принимает натуральное число. Она зануляет все биты этого числа кроме младшего единичного и возвращает результат в десятичной системе счисления.
 
Например
Дано число 40(10) = 101000(2)
Функция превращает его в 1000(2) = 8(10)

(с) Курбатов Е., 2017
C++
Write a program below
#include <iostream>
using namespace std;

int F(int x)
{
	return       
}

int main()
{
	int n;
	cin >> n;
	cout << F(n);
	return 0;
}       
Your last submission is saved in the editor window.
     

Results:

All results: