[p3] Zmiana kolejności bitów (p)
Języki:
cpp
Limit czasu: 1.0 s
Limit pamięci: 100 MB
Cel
Zadanie na użycie operatorów bitowych (lub arytmetycznych), pobranie rozmiaru typu i prostą pętlę.
Zadanie
Napisz program, który ze standardowego wejścia wczyta liczbę całkowitą bez znaku (typu unsigned int, w systemie dziesiętnym) i wypisze na standardowe wyjście wypisze liczbę tego samego typu powstałą przez zmianę kolejności jej bitów polegającą na odwróceniu kolejności czwórek sąsiednich jej bitów. Innymi słowy jeśli typ unsigned int będzie miał 32 bity, to liczba która w zapisie binarnym może zostać przedstawiona w postaci
b1b2b3b4
b5b6b7b8 ... b25b26b27b28
b29b30b31b32 powinna zostać zastąpiona przez liczbę, która w zapisie binarnym będzie miała postać
b29b30b31b32
b25b26b27b28 ... b5b6b7b8
b1b2b3b4.
Przykład dla typu 32-bitowego
Wejście
Zadanie na użycie operatorów bitowych (lub arytmetycznych), pobranie rozmiaru typu i prostą pętlę.
Zadanie
Napisz program, który ze standardowego wejścia wczyta liczbę całkowitą bez znaku (typu unsigned int, w systemie dziesiętnym) i wypisze na standardowe wyjście wypisze liczbę tego samego typu powstałą przez zmianę kolejności jej bitów polegającą na odwróceniu kolejności czwórek sąsiednich jej bitów. Innymi słowy jeśli typ unsigned int będzie miał 32 bity, to liczba która w zapisie binarnym może zostać przedstawiona w postaci
Przykład dla typu 32-bitowego
Wejście
2058Wyjście
2692743168