// 10 进制转任意进制
// base 表示要转换的进制,base >= 2
function convert(num, base) {
if (num === 0) return '0'
const r = []
const negative = num < 0 ? '-' : ''
num = Math.abs(num)
while (num) {
r.push(num % base)
num /= base
num |= 0
}
return negative + r.reverse().join('')
}
console.log(convert(10, 2)) // '1010'
console.log(convert(10, 7)) // '13'
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
答案
var convertToBase7 = function(num) {
return convert(num, 7)
};
function convert(num, base) {
if (num === 0) return '0'
const r = []
const negative = num < 0 ? '-' : ''
num = Math.abs(num)
while (num) {
r.push(num % base)
num /= base
num |= 0
}
return negative + r.reverse().join('')
}