以有效方式查詢 C++ 中數字的奇偶校驗
在本教程中,我們將編寫一個程式來查詢數字的奇偶校驗。
我們可以透過使用異或和右移運算子執行以下操作有效地找到數字的奇偶校驗。
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
結論
如果您對本教程有任何疑問,請在評論部分中提出。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP