We are required to write a JavaScript function that takes in a number as the first and the only argument. The function should use recursion to construct a string representing the binary notation of that number.
For example −
f(4) = '100' f(1000) = '1111101000' f(8) = '1000'
Example
Following is the code −
const decimalToBinary = (num) => { if(num >= 1) { // If num is not divisible by 2 then recursively return proceeding // binary of the num minus 1, 1 is added for the leftover 1 num if (num % 2) { return decimalToBinary((num - 1) / 2) + 1; } else { // Recursively return proceeding binary digits return decimalToBinary(num / 2) + 0; } } else { // Exit condition return ''; }; }; console.log(decimalToBinary(4)); console.log(decimalToBinary(1000)); console.log(decimalToBinary(8));
Output
Following is the output on console −
100 1111101000 1000