在C ++中高效地找到数字的奇偶校验
在本教程中,我们将编写一个找到数字奇偶校验的程序。
通过使用xor和右移运算符执行以下操作,我们可以有效地找到数字的奇偶校验。
int b; b = n ^ (n >> 1); b = b ^ (b >> 2); b = b ^ (b >> 4); b = b ^ (b >> 8); b = b ^ (b >> 16);
如果结果的最后一位是1,则它是奇校验,否则是奇校验。
示例
让我们看一下代码。
#include <bits/stdc++.h>
using namespace std;
void findParity(int n) {
int b;
b = n ^ (n >> 1);
b = b ^ (b >> 2);
b = b ^ (b >> 4);
b = b ^ (b >> 8);
b = b ^ (b >> 16);
if ((b & 1) == 0) {
cout << "Even Parity" << endl;
}
else {
cout << "Odd Parity" << endl;
}
}
int main() {
int n = 15;
findParity(n);
return 0;
}输出结果
如果运行上面的代码,则将得到以下结果。
Even Parity
热门推荐
10 生日摆摊祝福语简短独特
11 当伴娘祝福语简短大方
12 生日奥特曼可爱祝福语简短
13 给儿子新婚祝福语简短
14 新郎朋友红包祝福语简短
15 牛年大气简短的祝福语
16 牛年公司新年祝福语简短
17 新年至客户祝福语简短
18 提前生日祝福语 简短