2020-05-03 09:05:12 +02:00
|
|
|
function decimalToOctal (num) {
|
2020-08-20 14:42:39 -04:00
|
|
|
let oct = 0
|
|
|
|
|
let c = 0
|
2017-08-20 00:42:57 +05:30
|
|
|
while (num > 0) {
|
2020-08-20 14:42:39 -04:00
|
|
|
const r = num % 8
|
2020-05-03 09:05:12 +02:00
|
|
|
oct = oct + (r * Math.pow(10, c++))
|
|
|
|
|
num = Math.floor(num / 8) // basically /= 8 without remainder if any
|
2017-08-20 00:42:57 +05:30
|
|
|
}
|
2021-10-09 18:15:30 +02:00
|
|
|
return oct
|
2017-08-20 00:42:57 +05:30
|
|
|
}
|
|
|
|
|
|
2021-10-09 18:15:30 +02:00
|
|
|
export { decimalToOctal }
|
|
|
|
|
|
|
|
|
|
// > decimalToOctal(2)
|
|
|
|
|
// 2
|
|
|
|
|
|
|
|
|
|
// > decimalToOctal(8)
|
|
|
|
|
// 10
|
|
|
|
|
|
|
|
|
|
// > decimalToOctal(65)
|
|
|
|
|
// 101
|
|
|
|
|
|
|
|
|
|
// > decimalToOctal(216)
|
|
|
|
|
// 330
|
|
|
|
|
|
|
|
|
|
// > decimalToOctal(512)
|
|
|
|
|
// 1000
|