【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;
} 
相关推荐
划水的code搬运工小李5 分钟前
下载CSDN到PDF
开发语言·pdf·swift
不负岁月无痕8 分钟前
STL-- C++ stack_queue _priority_queue类 模拟实现
开发语言·c++
半个烧饼不加肉10 分钟前
JS 底层探究--上下文
开发语言·javascript·ecmascript
小满Autumn12 分钟前
依赖注入设计模式速查手册
开发语言·c#·wpf·mvvm·依赖注入
selt79117 分钟前
Redisson 源码深度分析
java·c++·redis·lua
周末也要写八哥20 分钟前
浅谈:C++中cpp 14 ~ cpp 17
开发语言·c++·算法
不会C语言的男孩24 分钟前
C++ Primer 第13章:拷贝控制
开发语言·c++
z落落28 分钟前
C# 静态成员 vs 非静态成员(调用规则+内存特点)+只读和常量 const常量 / readonly / static readonly 三者终极区别
java·开发语言·c#
zhangfeng113329 分钟前
超算中心 高性能计算 slurm的linux版本 centos7,如何安装docker,如何安装torch2.4
linux·运维·服务器·开发语言·人工智能·机器学习·docker
c2385631 分钟前
map和set
数据结构·c++