数字特征值(C语言)
2021/10/20 23:14:24
本文主要是介绍数字特征值(C语言),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目内容:
对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一个1,否则记下一个0。按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,就形成了一个二进制数字。比如,对于342315,这个二进制数字就是001101。
代码如下:
#include<stdio.h> #include<math.h> int main() { int a = 0, b = 0, c = 0,add=0,num=0,fbl=0; scanf("%d", &a); while (a > 0)//循环分解输入数字。 { c++;//对每位数字进行编号。 b = a % 10; //分解出输入数字的各位。 a = a / 10;//计算分解后剩下的a。 if((b%2==0)&&(c%2==0)||(b%2!=0)&&(c%2!=0))//按照题意对输入数字和编号进行判断。 { add = 1; } else { add = 0; } fbl= (add % 10)*pow(2,(c-1));//二进制转换为十进制。 num=num+fbl;//转换后的数加起来。 }printf("%d", num);//输出。 return 0;
这篇关于数字特征值(C语言)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Rocket消息中间件教程:新手入门详解
- 2024-11-26RocketMQ项目开发教程:新手入门指南
- 2024-11-26MQ源码教程:轻松入门Apache MQ源码解析
- 2024-11-26Rocket消息队列教程:新手入门必读
- 2024-11-26Rocket消息队列教程:新手入门指南
- 2024-11-26RocketMQ底层原理教程:新手入门指南
- 2024-11-26RocketMQ底层原理教程:入门级详解
- 2024-11-26如何获取 OpenAI API Key 用于ChatGPT AI大模型开发?
- 2024-11-26MATLAB 中 A(7)=[];什么意思?-icode9专业技术文章分享
- 2024-11-26UniApp 中如何实现使用输入法时保持页面列表不动的效果?-icode9专业技术文章分享