所以我给了这个问题,写一个R函数,给定一个向量x和一个值a,找到n的最小值,使得x的前n个元素的总和大于a,或者NA没有这样的n存在,使用for循环。
nloop=function(x,a){
sum=0
for (i in 1:length(x))
sum = sum + x[i]
if (sum>a)
end=x[i]
end
}
但这总是给我矢量中的最后一个值?
答案 0 :(得分:1)
试试这个:
nloop=function(x,a){
sum=0
for (i in 1:length(x)){
sum = sum + x[i]
if (sum>a){
ends=x[i];break}
}
ends
}