Chúng tôi được yêu cầu viết một hàm JavaScript nhận một số làm đối số đầu tiên và duy nhất. Hàm nên sử dụng đệ quy để tạo một chuỗi đại diện cho ký hiệu nhị phân của số đó.
Ví dụ -
f(4) = '100' f(1000) = '1111101000' f(8) = '1000'
Ví dụ
Sau đây là mã -
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));
Đầu ra
Sau đây là kết quả trên bảng điều khiển -
100 1111101000 1000