外星人的语言

前言

牛客网PAT乙级训练1017

题目描述

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

解决方案

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            System.out.println(Integer.toString(scanner.nextInt(),scanner.nextInt()).toUpperCase());
        }
    }
}

while(scanner.hasNext()) //输入直到文件结束为止
Integer.toString(int par1,int par2),par1表示要转成字符串的数字,par2表示要转成的进制表示

本题中因为要求转成的字符串的字母为大写字母,所以需要再最后的结果加一个toUpperCase()方法来把小写字母变成大写字母。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容