计算与N的差等于C ++中与N的XOR的数字
我们是数字N。目标是找到0到N之间的数字,这些数字与N的差等于与N的XOR。
我们将通过遍历否来做到这一点。从i = 0到i <= N,对于每个i,如果(NX == i ^ N),则递增计数。
让我们通过示例来理解。
输入-X = 6
输出-与N == XOR与N的差的数字计数:4
说明-数字是0 2 4 6。
输入-X = 20
输出-与N == XOR与N的差的数字计数:4
说明-数字是0 4 16 20
以下程序中使用的方法如下
我们取整数N。
函数diffisXOR(int n)取n并返回一个数字计数,该数字与n的差等于与n的xor。
将初始计数设为0。
从i = 0到i <= n遍历。
如果in == i ^ n。增量计数
在for循环结束时,计数将达到所需的结果。
返回计数并打印。
示例
#include <bits/stdc++.h>#include <math.h>
using namespace std;
int diffisXOR(int n){
int count = 0;
for (int i = 0; i <= x; i++){
if((x-i)==(i^x))
{ count++; }
}
return count;
}
int main(){
int N = 15;
int nums=diffisXOR(N);
cout <<endl<<"Count of numbers whose difference with N == XOR with N: "<<nums;
return 0;
}
输出结果
如果我们运行上面的代码,它将生成以下输出-
Count of numbers whose difference with N == XOR with N: 16
以上是 计算与N的差等于C ++中与N的XOR的数字 的全部内容, 来源链接: utcz.com/z/334707.html