奇偶校驗(轉換二進位制、bitset)
輸入一個字串,然後對每個字元進行奇校驗,最後輸出校驗後的二進位制數(如’3’,輸出:10110011)。
https://blog.csdn.net/meng_lemon/article/details/89060740
七位二進位制可表示所有字元的十進位制ASCII碼(0~127)。
int main() {
string s;
vector<int> res(8); //7位二進位制數表示字元的ASCII碼,最高位為奇偶校驗位
while (cin >> s) {
for (int i = 0; i < s.size();++i) {
int num = s[i]; //字元的十進位制ASCII碼
cout << num << endl;
int cnt = 0; //二進位制中1的個數
//轉換為二進位制
int j = 0;
while (num > 0) {
if (num % 2 == 1) {
res[j++] = 1;
++cnt;
}
else {
res[j++] = 0;
}
num = num >> 1;
}
res[7] = (cnt % 2 == 1) ? 0 : 1;
for (int i = 7; i >= 0; --i) { //反序輸出
cout << res[i];
}
cout << endl;
}
}
}
用bitset:
int main() {
string s;
vector<int> res(8, 0); //7位二進位制數表示字元的ASCII碼,最高位為奇偶校驗位
while (cin >> s) {
for (int i = 0; i < s.size();++i) {
bitset<7> b(s[i]);
string tmp = b.to_string();
int cnt = 0;
for (char& c : tmp) {
if (c == '1') cnt++;
}
if (cnt % 2 == 1) {
tmp.insert(tmp.begin(), '0');
}
else {
tmp.insert(tmp.begin(), '1');
}
cout << tmp << endl;
}
}
}
相關文章
- 二進位制轉十進位制快速轉換方法
- JavaScript十進位制轉換為二進位制JavaScript
- Oracle二進位制與十進位制轉換Oracle
- 什麼是二進位制?二進位制如何轉換?
- 進位制之間的轉換之“十六進位制 轉 十進位制 轉 二進位制 方案”
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 十進位制與二進位制互相轉換指南
- 進位制與二進位制及相關轉換
- java中二進位制、八進位制、十進位制、十六進位制的轉換Java
- 二進位制,八進位制,十進位制,十六進位制之間的轉換
- Python 進位制互相轉換(二進位制、十進位制和十六進位制)Python
- 【進位制轉換】二進位制、十六進位制、十進位制、八進位制對應關係
- JavaScript 二進位制數字轉換為十進位制JavaScript
- js二進位制和十進位制轉換程式碼JS
- JAVA 二進位制,八進位制,十六進位制,十進位制間進行相互轉換Java
- (轉)【iOS 開發】二進位制、十進位制、十六進位制相互轉換的方法iOS
- 計算機基礎進位制轉換(二進位制、八進位制、十進位制、十六進位制)計算機
- 【進位制轉換】十進位制與十六進位制相互轉換方法
- 大話二進位制,八進位制,十進位制,十六進位制之間的轉換
- Qt進位制轉換(十進位制轉十六進位制)QT
- 【轉帖】Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- JavaScript 進位制轉換(2進位制、8進位制、10進位制、16進位制之間的轉換)JavaScript
- javascript十進位制數字和二進位制相互轉換JavaScript
- 一看就懂二進位制、八進位制、十六進位制數轉換十進位制
- python進位制轉換(二進位制、十進位制和十六進位制)及注意事項Python
- Oracle中的二進位制、八進位制、十進位制、十六進位制相互轉換函式Oracle函式
- 進位制轉換
- Python 十進位制轉換為二進位制 高位補零Python
- [計算機基礎] 計算機進位制轉換:二進位制、八進位制、十進位制、十六進位制計算機
- ORACLE使用函式對二進位制、十進位制、十六進位制數互相轉換Oracle函式
- JavaScript ip地址轉換為二進位制JavaScript
- 十六進位制轉換為八進位制
- 十六進位制轉換為十進位制
- 十進位制轉換為十六進位制和二進位制程式碼例項
- 牛客網 二進位制數(進位制轉換、北郵機試)
- lua之m進位制轉換為n進位制-任意進位制轉換演算法演算法
- JavaScript 進位制轉換JavaScript
- 1.5進位制轉換