题目内容:
对数字求特征值是罕用的编码算法,奇偶特色是一种简略的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性雷同,则记下一个1,否则记下一个0。依照整数的程序把对应位的示意奇偶性的0和1都记录下来,就造成了一个二进制数字。比方,对于342315,这个二进制数字就是001101。
这里的计算能够用上面的表格来示意:
你的程序要读入一个非负整数,整数的范畴是[0,1000000],而后依照上述算法计算出示意奇偶性的那个二进制数字,输入它对应的十进制值。
提醒:将整数从右向左合成,数位每次加1,而二进制值每次乘2。
输出格局:
一个非负整数,整数的范畴是[0,1000000]。
输入格局:
一个整数,示意计算结果。
输出样例:
342315
输入样例:
13
include<stdio.h>
int main() {
int num,x,n,t;int i=1;int result=0;scanf("%d",&num);if(num>=0&&num<=1000000){ for(n=1;n<7;n++){ x=num%10; num=num/10; if(x%2==0&&n%2==0){ t=1; }else if(x%2!=0&&n%2!=0){ t=1; }else{ t=0; } t=t*i; i=i*2; result=result+t; }}printf("%d",result);return 0;
}