如何用for循环求和

S.G*_*leg -2 loops for-loop r

我需要求解 的总和(10^2 + 10^3) * 99,总和将为total = (1100+1100+1100...(99 times))。我知道大多数人不喜欢循环,但我需要使用 for 循环来解决这个问题。这是我到目前为止所拥有的......

prob1 <- function(n){  
  total <- 1100
  for(i in 2:99) 
    total[i] <- sum(i^2 + i^3)  
  return(total)
}
Run Code Online (Sandbox Code Playgroud)

这就是我得到的

[1]   1100     12     36     80    150    252    392    576    810   1100   1452   1872   2366   2940   3600
[16]   4352   5202   6156   7220   8400   9702  11132  12696  14400  16250  18252  20412  22736  25230  27900
[31]  30752  33792  37026  40460  44100  47952  52022  56316  60840  65600  70602  75852  81356  87120  93150
[46]  99452 106032 112896 120050 127500 135252 143312 151686 160380 169400 178752 188442 198476 208860 219600
[61] 230702 242172 254016 266240 278850 291852 305252 319056 333270 347900 362952 378432 394346 410700 427500
[76] 444752 462462 480636 499280 518400 538002 558092 578676 599760 621350 643452 666072 689216 712890 737100
[91] 761852 787152 813006 839420 866400 893952 922082 950796 980100
Run Code Online (Sandbox Code Playgroud)

如何让它正确添加并仅返回总数作为整数而不是数组?总数应该是108900(我相信)

aka*_*use 5

我对你的循环问题的看法略有不同,因为你只想要总数。您的代码正在将元素添加到带有 Total[i] 的向量中。相反,您只想让 i 成为一个迭代器,用于将一个数字添加到另一个数字。我用第一行将其初始化为 0。

total=0
for (i in 1:99) {
total<-total+(10^2 + 10^3)
}
total
Run Code Online (Sandbox Code Playgroud)

[1]108900

1100*99
Run Code Online (Sandbox Code Playgroud)

[1]108900