当前位置: 首页 > news >正文

7-4 BCD解密

BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!

现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。

输入格式:

输入在一行中给出一个[0, 153]范围内的正整数,保证能转换回有效的BCD数,也就是说这个整数转换成十六进制时不会出现A-F的数字。

输出格式:

输出对应的十进制数。

输入样例:

18

输出样例:

12

 不考虑a-f,直接转化为16进制

我的代码

#include<iostream>

using namespace std;
int main()
{
    int m;
    cin >> m;
    if(m==0)
    {
        cout<<m;
        return 0;
    }
        while (1)
    {
        int a = m;
        m = m / 16;
        cout << m;
        if (m / 16 == 0)
        {
            cout << a % 16;
            break;
        }
    }

}

http://www.dtcms.com/a/109751.html

相关文章:

  • 零基础玩转树莓派5!从系统安装到使用VNC远程控制树莓派桌面实战
  • [机器学习]随手记
  • NVM 多版本Node.js 管理全指南(Windows系统)
  • TP-Link TL-WR720N v3改造成无线打印伺服器
  • 【力扣hot100题】(048)二叉树的最近公共祖先
  • 硬件负载均衡:让服务像“牛顿钟”一样稳!
  • 如何重构前端项目
  • 深入解析Java哈希表:从理论到实践
  • Qt进阶开发:QDirModel的使用
  • 基于S函数的simulink仿真
  • 4.2-3 fiddler抓取手机接口
  • 【C语言入门】由浅入深学习指针 【第二期】
  • Sora结构猜测
  • TypeScript 元数据操作 API 及示例
  • Unity HDRP管线用ShaderGraph还原Lit,方便做拓展;
  • 详解Pinctrl子系统
  • Redis 的 Raft 选举协议
  • 使用MFC ActiveX开发KingScada控件(OCX)
  • Mac Apple silicon如何指定运行amd64架构的ubuntu Docker?
  • 浅浅尝试Numpy的函数:
  • 【数据结构】排序算法(中篇)·处理大数据的精妙
  • git commit Message 插件解释说明
  • Ubuntu服务器挂载之前的数据硬盘
  • C++中的链表操作
  • 网络运维学习笔记(DeepSeek优化版)027 OSPF外部路由计算
  • GaussDB数据库SQL开发实践与性能优化全解析
  • 汇编学习之《jcc指令》
  • Vue 数据传递流程图指南
  • CompletableFuture:核心方法、应用场景
  • 面向对象软件开发与中国哲学的关系