【PAT】外星人的语言

来源:互联网 发布:tp5 nginx pathinfo 编辑:程序博客网 时间:2024/04/28 23:06

题目描述
nowcoder费了很大劲,终于和地外文明联系上。我们地球人通常有10根手指,因此我们习惯用10进制的数,而外星人的手指有16跟、8根等不等的数目,因此他们使用与我们不同的进制。为了方便沟通,需要你开发一款工具,把地球人的10进制转换成外星人的R进制形式。

输入描述:
输入有多行。

每行包括两个正整数n和R,其中2≤R≤16。

输入直到文件结束为止。

输出描述:
对于每个用例,输出n对应的R进制形式。

超过10进制的数,10用A表示、11用B表示,依次类推。

输入例子:
1989 2
1119 16

输出例子:
11111000101
45F

#include <iostream>#include <vector>using namespace std;int main(){    int n, r;    while (scanf("%d %d", &n, &r) != EOF){        int counter = 0;        int temp;        char buffer[32];        while (n != 0){            temp = n % r;            n /= r;            if (temp >= 10){                buffer[counter] = temp - 10 + 'A';            }            else{                buffer[counter] = temp + '0';            }            counter++;        }        for (int i = counter - 1; i >= 0; i--){            printf("%c", buffer[i]);        }        printf("\n");    }}
0 0
原创粉丝点击