【C++题解】1294 - 二进制转十六进制

问题:1294 - 二进制转十六进制

类型:进制转换


题目描述:

请将一个不超过 100 位的二进制数转换为十六进制数!

输入:

一个不超过 100 位的二进制整数。

输出:

该数对应的十六进制数。

样例:

输入:

cpp 复制代码
11001001111011111000001000010011

输出:

cpp 复制代码
C9EF8213

1.分析问题

  1. 已知:
  2. 未知:
  3. 关系:

2.定义变量

3.输入数据

4.数据计算

5.输出结果

完整代码如下:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
	//一、分析问题
	//已知:一个不超过 100 位的二进制数;
	//未知:转换为十六进制数输出; 
	//关系:	进制转换。 
	//二、定义变量(已知、未知、关系)
	string s,r,d="0123456789ABCDEF";
	int index; 
	//三、输入已知
	cin>>s;
	//四、根据关系计算
	while(s.size()%4!=0){
		s.insert(0,"0");
	}
	for(int i=0;i<s.size();i+=4){
		index=(s[i]-'0')*8+(s[i+1]-'0')*4+(s[i+2]-'0')*2+(s[i+3]-'0');
		r+=d[index];
	}
	
	//五、输出未知 
	cout<<r;
	
	return 0;
} 
相关推荐
QT-Neal2 分钟前
C++ 编译过程详解
c++
Littlehero_1219 分钟前
QT自定义控件之热换站远程监控系统
c++·qt
*neverGiveUp*10 分钟前
Python基础语法
开发语言·python
努力努力再努力wz13 分钟前
【Qt入门系列】一文掌握 Qt 常用显示类控件:QLCDNumber、QProgressBar 与 QCalendarWidget
c语言·开发语言·数据结构·数据库·c++·git·qt
右耳朵猫AI26 分钟前
JS/TS周刊2026W21 | Deno2.8RC、Angular22RC、TypeORM1.0
开发语言·javascript·ecmascript
闪电悠米32 分钟前
黑马点评-秒杀优化-02_lua_precheck
开发语言·redis·分布式·缓存·junit·wpf·lua
盈建云系统32 分钟前
外贸网站SEO怎么做?从产品关键词到询盘页面,独立站内容优化流程和费用参考
开发语言·网站搭建
Dream_ksw38 分钟前
Python多继承之super()继承问题解决
开发语言·python
C++ 老炮儿的技术栈41 分钟前
如何利用 OpenCV 将图像显示在对话框窗口上
c语言·c++·人工智能·qt·opencv·计算机视觉·github
迈巴赫车主1 小时前
蓝桥杯21241灯塔java
java·开发语言·数据结构·算法·职场和发展·蓝桥杯·动态规划