当前位置: 面试刷题>> 七进制 (经典算法题500道)


完整题目描述

题目: 码小课 - 七进制转换

给定一个非负整数 num,请编写一个函数将其转换为七进制数(base-7)。转换后的数应该以字符串形式返回,不包含前导零。

示例 1:

输入: num = 100
输出: "202"

示例 2:

输入: num = 5
输出: "5"

注意

  • 输入的数 num 是在 32 位有符号整数范围内(即 0 ≤ num ≤ 2^31 - 1)。
  • 转换后的字符串中不应有前导零,除非该数为 0 本身。

PHP 示例代码

function convertToBase7($num) {
    if ($num == 0) {
        return "0";
    }
    
    $result = "";
    while ($num > 0) {
        $remainder = $num % 7;
        $result = strval($remainder) . $result;
        $num = intval($num / 7);
    }
    
    return $result;
}

// 测试示例
echo convertToBase7(100);  // 输出: 202
echo convertToBase7(5);    // 输出: 5

Python 示例代码

def convertToBase7(num):
    if num == 0:
        return "0"
    
    result = ""
    while num > 0:
        result = str(num % 7) + result
        num //= 7
    
    return result

# 测试示例
print(convertToBase7(100))  # 输出: 202
print(convertToBase7(5))    # 输出: 5

JavaScript 示例代码

function convertToBase7(num) {
    if (num === 0) {
        return "0";
    }
    
    let result = "";
    while (num > 0) {
        result = (num % 7).toString() + result;
        num = Math.floor(num / 7);
    }
    
    return result;
}

// 测试示例
console.log(convertToBase7(100));  // 输出: 202
console.log(convertToBase7(5));    // 输出: 5

码小课网站中有更多相关内容分享给大家学习,包括但不限于算法基础、数据结构、编程技巧等,欢迎大家访问码小课网站深入学习和交流。

推荐面试题