Ваша функция должна возвращать 1
в базовом случае, например:
if (integer <= 0) {
return 1;
}
Вы умножаете числа, и, как вы знаете, любое число, умноженное на 0
, равно нулю. Вместо этого вам нужно использовать 1
, мультипликативную идентичность, поскольку любое число, умноженное на единицу, само является числом.