<leetcode>504.七进制数——math

该博客介绍了如何将一个整数转换为7进制的字符串形式。通过使用C++实现,当给定一个整数num时,首先判断其正负,然后通过不断取余和除以7的过程构建七进制数字的字符串,最后将结果反转并添加负号(如果原数为负)。这种方法揭示了不同进制转换的基本原理。
摘要由CSDN通过智能技术生成

给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
解答:

class Solution {
public:
    string convertToBase7(int num) {
        if(num == 0) return "0";
        bool negative = num < 0;
        string digits;
        num = abs(num);
        while(num > 0){
            digits.push_back(num % 7 + '0');
            num = num / 7;
        }
        if(negative) digits.push_back('-');
        reverse(digits.begin(), digits.end());
        return digits;         
    }
};

逆推,十进制的数等于七进制的数乘以7的n-1次幂,所以七进制的各位数等于十进制的数对7取余之后取整。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值