2820: 【例47.2】 转进制

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:2 解决:2

题目描述

用递归算法将一个十进制数X转换成任意进制数$M$($M≤16$)。

输入

一行两个数,第一个十进制数$X$,第二个为进制$M$。

输出

输出结果。

样例输入 复制

31 16

样例输出 复制

1F

提示

#include<bits/stdc++.h>
using namespace std;
int x,n;
void p(int x,int n){
    int y;
    if(x<n){
        if(x<10) cout<<x;
        else cout<<char('A'+x-10);
        return ;
    }
    p(x/n,n);
    y=x%n;
    if(y<10) cout<<y;
    else cout<<char('A'+y-10);
}
int main(){
    cin>>x>>n;
    p(x,n);
    return 0;
}