首页 > 试题广场 >

设计算法把一个十进制整数转换为二至九进制之间的任意进制数输出

[问答题]
设计算法把一个十进制整数转换为二至九进制之间的任意进制数输出。
/**
 * 一个十进制整数转换为二至九进制之间的任意进制数输出
 * @param Ary :要转换的进制
 * @param num :要转换的数
 */
void Dec_To_All(int Ary, int num) {
    int temp = 0;
    stack<int> number_stack;
    if (Ary > 1 && Ary < 10) {
        while (1) {
            temp = num % Ary;                       //进制转换
            number_stack.push(temp);                //压栈
            num = num / Ary;                        //计算剩余数
            if (num == 0)
                break;
        }
        while (!number_stack.empty()) {
            cout << number_stack.top();             //得到栈顶元素
            number_stack.pop();                     //出栈
        }
    }
}

发表于 2020-03-23 17:28:45 回复(0)

 public static String transform(long num, int destDecimal) {
        StringBuilder result = new StringBuilder();
        while (num > 0) {
            long a = num % destDecimal;
            result.append(a);
            num /= destDecimal;
        }
        return result.reverse().toString();
 }
也不知道这是不是算法 刚起步 勿喷哈

编辑于 2019-11-20 11:23:31 回复(0)