数制转换
? ?進制的轉換可以借助強大的BigInteger,非常的方便。
? ??new java.math.BigInteger(num, from).toString(to);
表示num要轉換的數從from源數的進制 轉換成to的進制。
?
題目描述
求任意兩個不同進制非負整數的轉換(2進制~16進制),所給整數在long所能表達的范圍之內。 ??? 不同進制的表示符號為(0,1,...,9,a,b,...,f)或者(0,1,...,9,A,B,...,F)。?輸入描述:
??? 輸入只有一行,包含三個整數a,n,b。a表示其后的n 是a進制整數,b表示欲將a進制整數n轉換成b進制整數。a,b是十進制整數,2 =< a,b <= 16。??? 數據可能存在包含前導零的情況。
輸出描述:
??? 可能有多組測試數據,對于每組數據,輸出包含一行,該行有一個整數為轉換后的b進制數。輸出時字母符號全部用大寫表示,即(0,1,...,9,A,B,...,F)。輸入例子:
15 Aab3 7輸出例子:
210306import java.math.BigInteger; import java.util.Scanner;public class 數制轉換 {public static void main(String[] args) {Scanner in=new Scanner(System.in);while(in.hasNext()){int n1=in.nextInt();String num=in.next();int n2=in.nextInt();System.out.println((new BigInteger(num,n1).toString(n2)).toUpperCase());}in.close();}}
?
轉載于:https://www.cnblogs.com/ygh1229/p/5734338.html
總結
- 上一篇: 【leetcode77】Single N
- 下一篇: 梦到家里的房塌了怎么回事