1

我正在尝试在 R 中编写一个函数,它接受两个参数 x 和 n,并返回 h(x, n); x=1 有谁知道如何使用 for 循环来做到这一点?

我正在使用的函数是:x^0 + x^1 + x^2...x^n

我已经为此工作了一段时间,不确定我是否正确执行此操作。谁能给我一些关于如何解决这个问题的指导。

这是我所拥有的..

n = seq(1,6, by = 1)
x = 1
h = function (x,n){
    for (i in 0:n){
        for( i in 1:n){
        sum = sum +x^i
    {
}}
4

1 回答 1

5
h <- function( x, n ) sum( x^c(0:n) ) 
h( 1, 6 )
  1. 在 R 中最好避免循环。首先,您可以在许多情况下使用向量;然后,学会使用apply和朋友(sapplylapply)。
  2. 帮自己一个忙,<-而不是=在作业中使用。从长远来看,这是有回报的。
  3. 与其他编程语言一样,无需在函数外部声明变量(无论如何,由于 n 是函数的参数,因此您的第一次赋值对函数没有影响)
  4. 不要seq()在简单的地方使用k:n
于 2012-10-11T20:33:37.193 回答