格雷码

  • 题目描述
    • 输入
    • 输出
    • 样例输入
    • 样例输出
      • 源代码
      • 关于这题

题目描述



输入

输出

样例输入

样例输出

源代码

方法1

#include<iostream>
#include <bitset>
using namespace std;
int D2G(int x)
{return x ^ (x >> 1);
}int main(){int x;cin >> x;int y=D2G(x);int  i, j = 0;int a[1000];i = y;while (i){a[j] = i % 2;i /= 2;j++;}for (i = j - 1; i >= 0; i--)cout << a[i];cout << endl;}

方法2

#include <stdio.h>
#include <string.h>
#include<iostream>
#include<stack>
using namespace std;
int main()
{int n;stack<int>q;while (cin >> n){int a[10000];int k = 0;int t = n;while (t > 0){q.push(t % 2);t /= 2;}while (!q.empty()){a[k++] = q.top();q.pop();}cout << a[0];for (int i = 1; i < k; i++){if (a[i - 1] == a[i]){cout << '0';}else{cout << '1';}}cout << endl;}return 0;
}

关于这题

第一种解题方法 较为简单 这里解释一下第一种方法
格雷码的实现 有很多办法 但其实只要两个操作,就能产生:一个是右移 一个是异或 这里都用D2G 函数来实现了
这个时候我们得到的y 已经是 格雷码的十进制数字 我们只需要将其转换成二进制即可

异或 ^
其实可以看作不进位的2进制加法 (或者总结为相同为0 不同为1)
1^0 1
0^1 1
0^0 0
1^1 0

*1-4 OJ 605 格雷码相关推荐

  1. 通信系统未编码、卷积码与格雷码的仿真性能比较

    通信系统未编码.卷积码与格雷码的仿真性能比较 论文+代码+仿真结果:下载地址 以上仿真结果可知: 1.未编码.卷积编码和格雷码三种编码,经PSK调制后加AWGN(高斯白噪声),在经过解调和解码得出来的 ...

  2. 格雷码编码+解码+实现(Python)

    01 二值码 02 格雷码编码 2.1 编码优点 2.2 编码生成 2.3 递归生成 2.4 二值码转换 2.5 编码图 03 格雷码投影 3.1 投影图案生成 3.2 DLP投影图像 04 格雷码解 ...

  3. 直播回顾|基于格雷码结合相移技术的高鲁棒性高效率动态三维面形测量

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 大家好,本公众号现已开启线上视频公开课,主讲人通过B站直播间(bilibili号:3D视觉工坊:htt ...

  4. 重磅直播|基于格雷码结合相移技术的高鲁棒性高效率动态三维面形测量

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 大家好,本公众号现已开启线上视频公开课,主讲人通过B站直播间,对3D视觉领域相关知识点进行讲解,并在微 ...

  5. 二进制与格雷码之间的转换的Verilog实现(更多一点的讨论)

    目录 前言 二进制码转换为格雷码的方法 格雷码转换为二进制码的过程 更多一点讨论之generate for 更多一点讨论之for 最后对格雷码的介绍 前言 以前的博客也有写这方面的内容,只是没有显式的 ...

  6. FPGA中有限状态机的状态编码采用格雷码还是独热码?

    今天看<从算法设计到硬件逻辑的实现>这本电子书时,遇到了一个问题,就是有限状态机的编写中,状态编码是采用格雷码还是独热码呢?究竟采用哪一种编码呢? 采用独热码为什么节省许多组合电路? 等等 ...

  7. Verilog中状态机编码方式的选择:二进制编码(Binary)、格雷码(Gray-code)编码、独热码(One-hot)编码

    一般的,在Verilog中最常用的编码方式有二进制编码(Binary).格雷码(Gray-code)编码.独热码(One-hot)编码. 二进制码和格雷码是压缩状态编码. 若使用格雷编码,则相邻状态转 ...

  8. 3位格雷码的顺序编码_FPGA 设计之 跨时钟域(四 - 格雷码)

    上一篇文章总结了四种常用的多比特跨时钟域的设计.这篇我们主要来看一下 格雷码,文章目录如下: 什么是格雷码 格雷码转二进制码 二进制码转格雷码 N比特格雷码转N-1比特格雷码 什么是格雷码 ? A G ...

  9. 3位格雷码的顺序编码_绝对值编码器当中的格雷码

    格雷码:又叫循环二进制码或反射二进制码.格雷码是我们在旋转编码器中常会遇到的一种编码方式. 格雷码的特点: 任意两个相邻的代码只有一位二进制数不同: 循环码,0和最大数(2^n-1)之间只有一位不同: ...

最新文章

  1. 判断参数对象是否为DBNULL
  2. 软件测试周记录之jmeter
  3. 复合五点高斯公式计算(Python实现)
  4. 【维纳滤波】通过MATLAB自带的维纳滤波函数进行滤波
  5. 设置Eclipse中的Courier New字体
  6. varchar 保存英文中文区别。
  7. 自控matlab设计,自动控制原理课程设计--基于MATLAB软件的自动控制系统仿真
  8. slack通知本地服务器_通过构建自己的Slack App学习无服务器
  9. java中什么是task_20171018java总结——Spring任务调度task:scheduled-tasks
  10. excel如何把顺序倒过来_春节酒局多,这些葡萄酒倒酒礼仪你一定要知道
  11. [转]提高PR值的具体方法
  12. Vulnhub-HackInOS
  13. html中中文字体的代码
  14. java毕业设计彩妆销售网站Mybatis+系统+数据库+调试部署
  15. 机器人 李永禄_第八届中国青少年机器人竞赛名单
  16. 视频会议室装修部署指南
  17. matlab中asc格式,matlab将图片转换成asc码txt文本格式 | 学步园
  18. python 离群值_如何从Numpy数组中删除离群值
  19. springboot feign too many bytes written executing
  20. element-ui 上传图片后清空图片显示

热门文章

  1. python全局变量和局部变量可以同名吗_Python global
  2. SQL:OUTER JOIN用法详解
  3. 盘点人工智能重点技术领域
  4. mobaxterm在线实时查看日志-命令
  5. img 图片自适应大小
  6. VMware安装windows server2008R2x64
  7. 【云原生 | Kubernetes 系列】--Envoy熔断
  8. platform创建说明
  9. echarts tooltip层级
  10. 【转】使用cocosbuilder在cocos2d-…