Используйте bitset для печати двоичных значений некоторых чисел, например 1, -1, 0, 18 и -18, а также максимально возможного положительного int.
От примерчик:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#include <iostream> using std::cout; using std::endl; #include <bitset> using std::bitset; #include <iomanip> using std::setw; int main() { int a(1); bitset<8> b(a); cout <<setw(3)<<a<<' '<<b<<endl; a=-1; b=a; cout <<setw(3)<<a<<' '<<b<<endl; a=0; b=a; cout <<setw(3)<<a<<' '<<b<<endl; a=18; b=a; cout <<setw(3)<<a<<' '<<b<<endl; a=-18; b=a; cout <<setw(3)<<a<<' '<<b<<endl; a=9999999999; b=a; cout <<setw(3)<<a<<' '<<b<<endl; return 0; } |
Как то результат не понятный, что -1 восемь единиц, что 999999999999, тоже восемь единиц, ну фиг с ним.
[youtube]http://www.youtube.com/watch?v=NAGPWYzm5as[/youtube]