#include <iostream> using namespace std; int main() { unsigned char n[8] = {0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80}; unsigned char bs = 0; for(int i = 0; i < 8; i++) //perebor baytov { bool odd = 0; //flag delaetsya 4etnim dlya togo, 4tobi kogda budet naydena pervaya edinica v bayte, on (flag) stal ne4etnim for(int j = 0; j < 8; j++) //perebor bitov v bayte { if(n[i] & (1 << j)) // //even = even ? false : true; //even ^= 1; if (odd == 1) //esli ne4etniy odd = 0; //sdelat 4etnim else odd = 1; //sdelat ne4etnim } //status |= (!even << i); if(odd == 1) //esli ne4etniy bs = bs | (1 << i); //zapisat 1 v bayt-status } for(i = 0; i < 8; i++) { cout << hex << int(n[i]) << ": " << dec << bool(bs & (1 << i)) << endl; } return 0; } |