很久以前遇到的一个问题,今天找了一下解决方案:https://blog.youkuaiyun.com/SJF0115/article/details/8690581
感谢sjf0115的分享。
理清楚上述博客的思想后,自己写了一遍代码,以整理思路。
具体做法其实就是求余数,然后将余数逆序拼接就是。
下面代码解释如下;
1.进制的表示用0-9 A-Z a-z
2.循环求余数。每次循环从第一位开始。
具体过程如下如:终止条件为不存在大于0的商
结合图片的过程和代码应该就很好懂了。
代码如下:
import java.util.Scanner;
/**
* Created by zfr on 2018/08/07.
* 只考虑正数
* 输入:一个M进制的字符串,将其转换为N进制的字符串
* 字符串可能很长很长 - 大数的进制转换
*
*/
public class MtoN {
public static void main(String[] args) {
// TODO Auto-generated method stub
MtoN a = new MtoN ();
Scanner scanner = new<