十六进制与十进制之间的转换
来源:互联网 发布:中卫云计算2018,130 编辑:程序博客网 时间:2024/06/06 13:06
十六进制转换成十进制的思路:先把十六进制转换成二进制,再把二进制转换成十进制
#include <iostream>#include <cmath>#include <string>using namespace std;string hexToBin(string hex){ string bin = ""; for (int i = 0; i < hex.length(); i++) { switch(hex[i]) { case '0':bin += "0000";break; case '1':bin += "0001";break; case '2':bin += "0010";break; case '3':bin += "0011";break; case '4':bin += "0100";break; case '5':bin += "0101";break; case '6':bin += "0110";break; case '7':bin += "0111";break; case '8':bin += "1000";break; case '9':bin += "1001";break; case 'A':bin += "1010";break; case 'B':bin += "1011";break; case 'C':bin += "1100";break; case 'D':bin += "1101";break; case 'E':bin += "1110";break; case 'F':bin += "1111";break; } } return bin;}long long binToDecimal(string bin){ long long decimal = 0; for (int i = bin.length()-1; i >= 0; i--) { if (bin[i] == '1') { decimal += pow(2, bin.length()-i-1); } } return decimal;}int main(){ string hexStr; cin >> hexStr; cout << binToDecimal(hexToBin(hexStr)) << endl; return 0;}
十六进制转换成十进制的思路:直接把十六进制数对16取模
#include <iostream>#include <string>using namespace std;char show(int temp){ switch(temp) { case 0:return '0'; case 1:return '1'; case 2:return '2'; case 3:return '3'; case 4:return '4'; case 5:return '5'; case 6:return '6'; case 7:return '7'; case 8:return '8'; case 9:return '9'; case 10:return 'A'; case 11:return 'B'; case 12:return 'C'; case 13:return 'D'; case 14:return 'E'; case 15:return 'F'; }}int main(){ long octal; string hex = ""; cin >> octal; if (octal == 0) { cout << 0; return 0; } while (octal) { hex += show(octal%16); octal = octal / 16; } for (int i = hex.length()-1; i >= 0; i--) { cout << hex[i]; } return 0;}
0 0
- 十六进制与十进制之间的转换
- 十六进制与十进制之间的转换
- MFC--十进制与十六进制之间的转换
- 十六进制、BCD码与十进制之间的转换
- 二进制、八进制、十六进制与十进制之间的转换
- 十进制数与二进制, 八进制, 十六进制之间的转换
- 二进制,八进制,十进制与十六进制之间的相互转换
- 十进制与十六进制、二进制、八进制之间的转换(Java)
- java 十进制与二进制,八进制,十六进制之间的转换
- Java 二进制、八进制、十六进制与十进制之间的转换
- 十进制与二进制八进制十六进制之间的互相转换
- 十进制与八进制和十六进制之间的转换
- 十进制与二进制 十六进制之间转换
- 十六进制与十进制的转换
- 十进制、二进制、八进制、十六进制之间的转换
- 二进制十进制十六进制之间的转换
- 二进制、八进制、十进制、十六进制之间的转换
- 二进制、八进制、十进制、十六进制之间的转换
- 多媒体播放器配置(使用MediaPlayer)
- jira研发管理实践
- tomcat8配置和域名设置
- 1213
- 从源码角度学习Volley框架
- 十六进制与十进制之间的转换
- 深度学习论文阅读路线图
- CSMA/CD vs CSMA/CA
- Razor做邮件内容动态生成器
- 本地Git连接服务器git不用每次输入用户名和密码的方法
- 真诚和欲望的角力 ——12月13日,今天我代表真诚
- poj1743 Musical Theme 后缀数组
- Windows下丢包率测试源码
- raw_input和input的区别