Vấn đề
Chúng ta cần viết một hàm JavaScript nhận vào một số num làm đối số duy nhất. Hàm phải tính và trả về số chữ số trong giai thừa của số num.
Ví dụ, nếu đầu vào là:
Đầu vào
const num = 7;
Đầu ra
const output = 4;
Giải thích
Vì giá trị của 7! là 5040 chứa 4 chữ số.
Ví dụ
Dưới đây là mã thực hiện:
const num = 7;
const countDigits = (num = 1) => {
let res = 0;
while (num >= 2) {
res += Math.log10(num);
num--;
}
return ~~res + 1;
};
console.log(countDigits(num));
Kết quả
4