Wikioi 天梯 十进制转m进制(1474)
来源:互联网 发布:echarts饼图显示数据 编辑:程序博客网 时间:2024/04/29 13:33
题目描述 Description
将十进制数n转换成m进制数 m<=16
n<=100
输入描述 Input Description
共一行
n和m
输出描述 Output Description
共一个数
表示n的m进制
样例输入 Sample Input
样例1:10 2
样例2:100 15
样例输出 Sample Output
样例1:1010
样例2:6A
数据范围及提示 Data Size & Hint
用反向取余法
说实话,wikioi天梯里普及一等以前的题怎么看都有点教程的性质~~
关于十进制转m进制的方法,题目下面给得清清楚楚,那么我的任务就是具体讲解一下“反向取余法”的步骤。
我们首先以十进制下的18为例,假定我们要把它转化为3进制……
由于笔者写博客技术不精,不会构造演算过程,下面贴一张不太雅观的图片~~
上图是笔者弱弱的演算,描述一下就是:
18除3商6,余0,记下余数零;6继续除3商2,记下余数0;3除不了2了,记下余数2(商0余2);除不了了,就把记过的余数从底向上写一遍——200就是3进制下的18;
当把一个十进制数转化为m进制时,你要不断用m去除原数,每次运算记录余数,直到商小于1,然后把记录的余数自底向上写一遍,就得到了m进制下的原数。
简单说一下我的理解就是(仅供参考):十进制下的一个m就是m进制下的10,19除三商六,三进制下的该数中就包含6个“10”,余下的1在三进制中凑不成“10”,就留在了个位……(没懂吧…不严谨的表达从来难以听懂…要是有人懂了,笔者就乐疯了…)
具体实现时,由于先得到的余数后输出,所以可以想到用栈或者递归来实现。
顺带一提,这式子(计算)叫短除法;
算法描述:读入数据;不断递归进行除法,直到商为零时终止递归,跳栈时输出本层递归所得余数。
Program asd;Varx,d:longint;Consta:array[0..16]of char=('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G');Procedure zhuan(bb,dd:longint);beginif (bb div dd)=0 then begin write(a[bb]);exit;end;zhuan(bb div dd,dd);write(a[bb mod dd]);end;Beginreadln(x,d);zhuan(x,d);End.
- Wikioi 天梯 十进制转m进制(1474)
- Wikioi 天梯 m进制转十进制(1475)
- wikioi之1474 十进制转m进制
- wikioi 十进制转m进制
- wikioi天梯之1475 m进制转十进制
- wikioi p1474 十进制转m进制
- [WikiOI] 2.4.1 十进制转m进制
- wikioi p1475 m进制转十进制
- wikioi m进制转十进制c
- 1474 十进制转m进制+1475 m进制转十进制
- 十进制转m进制
- 十进制转m进制
- [WikiOI] 2.4.2 m进制转十进制
- Wikioi 天梯 求和(1202)
- Wikioi 天梯 排序(1076)
- Wikioi 天梯 最大公约数(1212)
- codevs天梯 m进制转十进制 模拟
- codevs天梯 m进制转十进制 模拟
- js2dx --- CocosBuilder
- URAL 1343
- Codeforces Round #195 (Div. 2) C. Vasily the Bear and Sequence
- ubuntu 10.04 Lucid 更新源列表,适合国内大部分电信、网通用户
- MySQL+Sphinx实现全文搜索
- Wikioi 天梯 十进制转m进制(1474)
- JSP中下列列框详解
- 推荐使用jquerymobile做移动开发
- php的$_POST数组
- ubuntu安装中文输入法
- ARM处理器模式切换(含MRS,MSR指令)
- hdu 2208 DFS枚举
- Reg全解
- hdu 1157