303
Cerința
Se dă un număr întreg n reprezentat pe 32 de biți cu semn. Afișați valoarea obținută prin eliminarea celui mai puțin semnificativ bit de 1 (setarea sa la valoarea 0).
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul va afișa pe ecran valoarea pe care o stochează variabila în care a fost citit n după realizarea operației cerute.
Restricții și precizări
- valoare citită se poate memora pe 32 de biți cu semn și este nenulă
Exemplu
Intrare
6
Ieșire
4
Explicație
Bitul cel mai puțin semnificativ al lui 6 este cel de pe penultima poziție. După setarea sa la 0, valoarea rămasă este 4.
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long n , cnt = 0 , x = 1;
cin >> n;
while(n % 2 == 0)
{
cnt++;
n >>= 1;
}
n <<= cnt;
cout << (n & ~(x <<= cnt));
}
Comentarii