本文主要是介绍xtu oj 1162 奇偶校验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
奇偶校验是一种在通讯中经常使用的,用来确认传输的字节是否正确的手段。 对于一个BYTE(8BIT),我们使用0~6bit来存储数据,称为数据位,第7位存储奇偶校验位。 如果数据位有偶数个1,那么第7位为0,否则为1。现给您一个字节表示的整数n(0~255),请计算一下它是否满足奇偶校验的要求。
输入
每行一个整数n(0≤n≤255),如果n为-1,表示输入结束,这个样例不需要处理。
输出
每行输出一个样例的结果,如果满足奇偶校验输出Yes,否则输出No。
样例输入
0 129 2 -1
样例输出
Yes Yes No
AC代码
#include<stdio.h>
int main(){int n;while(scanf("%d",&n)&&n!=-1){int t=n,i,cnt=0,k=0,a[20]={};while(n){a[k]=n%2;n/=2;k++;}for(i=1;i<k;i++){if(a[i]==1)cnt++;}if((cnt%2==0&&a[0]==0)||cnt%2!=0&&a[0]==1)printf("Yes\n");else printf("No\n");}
}
这篇关于xtu oj 1162 奇偶校验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!