不要自卑,去提升实力
互联网行业谁技术牛谁是爹
如果文章可以带给你能量,那是最好的事!请相信自己
加油o~

解题思路:
将一个P进制的数,转化为Q进制的数,分为两步:

1、将P进制数转化为10进制的数

int y=0;
int product=1;
while(num!=0) {
y+=num%10*product;
num/=10;
product*=p;
}

2、将十进制转化为Q进制的数

int[] arr=new int[50];
int length=0;
do {
arr[length++]=num%q;
num/=q;
}while(num!=0);

代码:

/**
*作者:魏宝航
*2020年11月26日,下午21:05
*/
import java.util.*;
public class Test{
//将P进制转为10进制
public static int toTen(int num,int p) {
int y=0;
int product=1;
while(num!=0) {
y+=num%10*product;
num/=10;
product*=p;
}
return y;
}
//将10进制转为Q进制
public static String toOther(int num,int q) {
int[] arr=new int[50];
int length=0;
do {
arr[length++]=num%q;
num/=q;
}while(num!=0);
String res="";
for(int i=length-1;i>=0;i--) {
res+=arr[i]+"";
}
return res;
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int a=12;
System.out.println(toTen(10110, 2));
System.out.println(toOther(22, 2));
}
}