Я обнаружил несогласованность в примерах рекурсивной функции, поэтому мне нужна помощь в разъяснении ее работы.
Эта рекурсивная функция имеет значение аргумента x, которое должно быть возвращено вместе с функцией fracrec. Этот fracrec умножается на исходное значение x. Значение этого является тем, что дает скобка х-1. Он повторяется до тех пор, пока не выйдет в точке x == 0. Это означает, что часть x и '*' возврата - это «формула» и то, что используется для каждого раунда.
facrec <- function(x){
if(x==0){
return(1)
} else {
return(x*facrec(x-1))
}
}
Теперь возьмите следующий инет ничего похожего на x и ''. Поэтому я смотрю на это по-другому, поскольку myfibrec (5) выдает «5». Принятие абсолютного значения первого прохода было бы 4 + 3 и уже превысило 5 с еще большим количеством проходов. Не существует формулы, которую можно использовать, поэтому я с трудом понимаю, как возникла пятерка. В приведенном выше примере я использовал формулу 'x' и '', что я признаю ее странной и, вероятно, неправильной.
myfibrec <- function(n) {
if(n==1||n==2){
return(1)
}else{
return(myfibrec(n-1)+myfibrec(n-2))
}
}
В еще одной, ниже она обрабатывает значение варгумент как формула. Это дает 2,3,4,5,6,7,8,9,10.
function Count (integer N)
if (N <= 0) return "Must be a positive integer";
if (N >9 ) return "counting completed";
else return Count (N+1);
end function
Откуда все формулы или математические вычисления, полученные в этих рекурсивных функциях?