给定一个十进制数M,以及需要转换的进制数N,将十进制数M,转换成N进制数 输入为一行,M是(32)位整数,N(2<=N<=16),用空格隔开
eg:输入 7 2
输出 111
输出描述:为了每个测试实例输出转换后的数,每个输出占一行。
如果N大于9,则对应的数字规则参考16进制(比如10用A表示,等等)
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int m=scanner.nextInt();
int n=scanner.nextInt();
boolean b=true;
if(m<0) {
m=-m;
b=false;
}
String str="";
String table="0123456789ABCDEFG";
while((m/n)!=0) {
str+=table.charAt(m%n);
m=m/n;
}
str+=m%n;
String str2="";
for(int i=str.length()-1;i>=0;i--) {
str2+=str.charAt(i);
}
if(b==false) {
str2="-"+str2;
}
System.out.print(str2);
}
|