ФІО = Горбаченко В.А. Запитання:/* * Звіт * Горбаченка Василя Анатолійовича * Студента 1-го курсу. Радіофізичного факультету. Напрям підготовки: Прикладна фізика. * Група 3. * Лабораторна робота №3. Варіант 12. * Завдання: */ #include #include #include #include using namespace std; void print_bits (unsigned n) { // функція друкує біти, функція з лекії int bit; // змінна, в якій буде знаходитись поточне значення кількості бітів for (bit = sizeof(n)*8-1; bit >= 0; bit--) // початкове значення bit = довжина змінної unsigned { if ((n >> bit) & 01) { // тут іде логічне множення... складно пояснити, але спробую... // (n >> bit) - здвигає на "bit" розрядів // & 01 - логічне множення - тобто, грубо кажучи кусає правіший біт // тут іде побітове множення(чи просто кажучи побітове "і"), для прикладу: // 10101110001101 // & побітове "і" // 00000000000001 тобто тут насправді (01) // = // 00000000000001 - цей результат позитивний, тобто більше нуля, // а значить, грубо кажучи == TRUE putchar ('1'); } else {// іначе 0 - наприклад: // 011010 // & // 000001 // = // 000000 - == FALSE або нулю - негативний putchar ('0'); } if (bit % 4 == 0) putchar (' '); // якщо біт, на якому стоїть лічильник кратний чотирьом, то ставимо пробіл } cout<= 0 ; i-- ){ z <<= 1; z = z | ( (y>>i) & 01 ); } for (int i = 0 ; i < p ; i++ ){ z <<= 1; } //==================================================================================== // теперь самый ответственный момент... Да, тот самый долгожданный ;))) result = result | z ; //==================================================================================== // Усё. г. return result; } int main(){ unsigned x, y; // створюємо цілу беззнакову двохбайтову змінну int n,p; cout << "Input x" << endl; // підсказка користувачу cin >> x; // зчитуємо число print_bits (x); // друкуємо біти cout << "Input y" << endl; // підсказка користувачу cin >> y; // зчитуємо число print_bits (y); // друкуємо біти do { cout << "Input p" << endl; // підсказка користувачу cin >> p; // зчитуємо число if (p<=0) {cout<<"ERROR : N>0"<> n; // зчитуємо число if (n<=0) {cout<<"ERROR : N>0"<