코딩테스트
[C++] 패리티 비트(Parity Bit)
뇨롱
2021. 6. 27. 00:44
숙제 4 (패리티 비트)
31-비트로 만들어진 데이터와 가장 높은 자리에 있는 1개의 패리티 비트를 포함하는 총 32-비트의 데이터를 송신하는 송신 측에서 짝수 패리티 기법을 이용하여 패리티를 정하여 송신할 데이터를 만드는 프로그램을 작성하시오.
#include<iostream>
using namespace std;
int main(){
unsigned int num=0x00;
cin>>num;
int tmp=num;
int count=0x00;
while(1){
if(tmp%2==1) count++;
tmp/=2;
if(tmp==0) break;
}
if(count%2==1) num|=0x80000000;
cout<<num<<endl;
return 0;
}