[zp03] Zmiana kolejności bitów
Języki:
c
Limit czasu: 1.0 s
Limit pamięci: 5 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 par 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
b1b2b3 b4 ... b29 b30b31b32 powinna zostać zastąpiona przez liczbę, która w zapisie binarnym będzie miała postać
b31b32b29 b30 ... b3 b4b1b2.
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 par 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
2050Wyjście
2149580800