Computer >> Máy Tính >  >> Lập trình >> C ++

Đối với mọi tập hợp bit của một số, chuyển đổi các bit khác trong C ++

Trong bài toán này, chúng ta được cung cấp hai giá trị nguyên. Nhiệm vụ của chúng tôi là tạo một chương trình c để hoạt động tốt hơn, Đối với mỗi bit được đặt của một số sẽ chuyển đổi các bit khác.

Hãy lấy một ví dụ để hiểu vấn đề

Input: 3 7
Output: 4
Binary of 3: 011
Binary of 3: 111

Bit đầu tiên và bit thứ hai của số thứ hai được lật ngược lại để làm cho nó 100, tức là 4.

Phương pháp tiếp cận giải pháp

Một cách tiếp cận để giải quyết vấn đề là thực hiện phép toán XOR của hai số. Kết quả sẽ được chuyển đổi cho bit mà ở đó các bit của I’st là 1 bằng cách sử dụng phép toán XOR.

Ví dụ

Chương trình minh họa hoạt động của giải pháp của chúng tôi

#include <bits/stdc++.h>
using namespace std;

int main(){
   int a = 3, b = 7;
   cout<<"The numbers are "<<a<<" & "<<b<<endl;
   cout<<"The result of flipping bits is "<<(a ^ b);
   return 0;
}

Đầu ra

The numbers are 3 & 7
The result of flipping bits is 4