【C++解题报告】十进制转换二、八、十六进制
来源:互联网 发布:手机电脑控制软件 编辑:程序博客网 时间:2024/06/18 07:25
题目来源:
《函数、递推、递归》,递归第7题。
题目描述:
编程输入一个十进制整数N将它转换成二进制、八进制、十六进制。
输入格式:
输入N。
输出格式:
输出N的二进制、八进制、十六进制形式。
数据规模与约定:
0<N<21000000
题目思路:
输入N,定义3个函数(bit/oct/hex)分别计算二进制、八进制、十六进制。计算过程如下(以10进制的8转为2进制为例):8-1000.
8/2=4.....0
4/2=2.....0
2/2=1.....0
1
如果十进制数n大于1,则bit(n/2),求各个商,再以次输出余数n%2.
如果十进制数n大于1,则bit(n/2),求各个商,再以次输出余数n%2.
八进制数(如果大于7,oct(n/8),n%8)、十六进制数(如果大于15,oct(n/16),n)道理相同。
代码:
#include<iostream> //头文件 using namespace std;int bit(int n) //计算二进制 {if(n>1) //如果n是大于1 递归调用n/2 再输出n%2 下面的八、十六进制同理 bit(n/2);cout<<n%2; //输出进制数 }int oct(int n) //计算八进制 {if(n>7)oct(n/8);cout<<n%8;}int hex(int n) //计算十六进制 {if(n>15)hex(n/16);cout<<n%16;}int main() //定义主函数 {int n; //定义变量 cin>>n;bit(n); //进制的转换 cout<<"\n";oct(n);cout<<"\n";hex(n);cout<<"\n";}
0 0
- 【C++解题报告】十进制转换二、八、十六进制
- 十进制转换二、八、十六进制
- 二 八和十六进制转换为十进制
- C实例---二、八、十六进制转十进制
- 十进制转换二,八,十六进制 及 二,八,十六进制转十进制
- 二,八,十六进制数转换为十进制数
- java 十进制转二、八、十六进制转换函数
- 十进制转二、八、十六进制
- 二、八、十六进制转十进制
- c语言十进制数转换为二、十六进制数
- 进制转换(二)(2012.2.20)通用版本(十进制转换二、八、十六进制)
- 八、十六进制数转换到十进制数
- Python十进制转二、八、十六进制
- 二,八,十,十六进制转换
- 二、八、十、十六进制转换
- 二、八、十、十六进制转换
- 二、八、十、十六进制转换
- 二,八,十,十六进制之间的转换-C语言
- Bean的初始化与销毁
- Lattice系列FPGA入门相关3(FPGA选型策略--强烈赞同)
- CDQ分治+ DP BZOJ 1492 Cash
- 17 - 01 - 14 计算机网络(04)(数据链路层)
- Sublime Text 3 3126 注册码
- 【C++解题报告】十进制转换二、八、十六进制
- Ubuntu 16.04 LTS连接无线上网慢的解决
- 2016即将结束,2017遇见更好的自己
- @Profile的使用
- 年终总结
- Android Studio中创建JAVA应用程序步骤
- 微信小程序初探
- 【H.264/AVC视频编解码技术详解】十二、解析H.264码流的宏块结构(下):H.264帧内编码宏块的预测结构
- SPOJ - MKEQUAL E - Make them equal ! 水题