Hi all, e đang học cách tính giai thừa của 1 số bằng while loop, code 1 là e làm, code 2 là cách giải của người ta, 2 cái đều ra kết quả. Nhưng mọi người cho e hỏi ở code 1, e viết như vậy có ổn không ạ, hay vì trường hợp này hên nên ra đúng, nếu dùng để giải bài khác thì k được. Vì ở code 2 có thêm phần if (num === 0 || num === 1) { return 1;} . Thanks
function factorialize(num) {
// code 1
var sum = 1;
var i = 1;
while(i <= num) {
sum *= i;
i++;
}
return sum;
//code 2
var result = num;
if (num === 0 || num === 1) {
return 1;
}
while(num > 1) {
num--;
result *= num;
}
return result;
}