Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用r中的rep语句获取阶乘?_R_Factorial_Rep - Fatal编程技术网

如何使用r中的rep语句获取阶乘?

如何使用r中的rep语句获取阶乘?,r,factorial,rep,R,Factorial,Rep,我想用rep语句得到阶乘函数 我试试!!但是失败了 fact <- function(n){ for (i in 0:n){ while(i<n){ rep{n*fact(n-1) if(i ==n) break} } } fact假设您的意思是复制,而不是rep,这将是一个解决方案: fact <- function(N){ n <- N f <- 1 replicate(n

我想用rep语句得到阶乘函数

我试试!!但是失败了

   fact <- function(n){
      for (i in 0:n){
        while(i<n){
          rep{n*fact(n-1) if(i ==n) break}
       }
    }

fact假设您的意思是
复制
,而不是
rep
,这将是一个解决方案:

fact <- function(N){
  n <- N
  f <- 1
  replicate(n, {
    f <<- f*n
    n <<- n-1
    f
  })[N]
}
N <- 10

factorial_generator <- function(){
  fac <- 1
  n <- 0
  function(){
    n <<- n+1
    fac <<- fac * n
    return(fac)
  }
}

my_factorial <- factorial_generator()

replicate(N, my_factorial())[N]

不要把代码放在图片中——把它放在实际问题中。如果有人想帮忙的话,没有人会想要手动转录你的图像。哦。。。好啊我编写了代码。
rep
用于重复向量的值,您可能是指
replicate
?是的,right rep表示复制。