首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >进制转换

进制转换

作者头像
忧愁的chafry
发布2022-10-30 15:46:12
发布2022-10-30 15:46:12
6900
举报
文章被收录于专栏:个人技术笔记个人技术笔记

题目:

思路:

首先我们要确定进行转换的数的可能性为三种,即负数,正数与0;

      其次十进制以上的转化情况。例:11进制中,10用A表示,

然后最后考虑到的是获取进制数的顺序

代码示例:

import java.util.Stack;

public class Solution4 {

    public static void main(String[] args) {

        int M = 7, N = 2;

        System.out.println(solve(M, N));

    }

    /**

     * 进制转换

     * 原理:

     * 首先我们要确定进行转换的数的可能性为三种,即负数,正数与0;

     * 其次十进制以上的转化情况。例:11进制中,10用A表示

     *

     * @param M int整型 给定整数

     * @param N int整型 转换到的进制

     * @return string字符串

     */

    public static String solve(int M, int N) {

        if (M == 0)

            return "0";

        StringBuffer str = new StringBuffer();

        Stack<Integer> stack = new Stack<Integer>();

        if (M < 0) {

            str.append("-");

            M = Math.abs(M);

        }

        while (M > 0) {

            stack.push(M % N);

            M = M / N;

        }

        int temp;

        while (!stack.isEmpty()) {

            temp = stack.pop();

            if (temp > 9) {

                str.append((char) (temp - 10 + 'A'));

            } else {

                str.append(temp);

            }

        }

        return String.valueOf(str);

    }

}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-12-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目:
  • 思路:
  • 代码示例:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档