【发布时间】:2016-10-29 16:38:57
【问题描述】:
我需要一些关于我一直在使用的 for 循环的帮助。我不知道我所做的是否可行,但我希望你能帮助我实现它。
最初,我有一个包含 100 个元素的列表,这些元素都是 FALSE。 我想通过 100 个变量来更改元素(FALSE/TRUE)。 第 1 步应将每个元素更改为 TRUE, 第 2 步每隔一个元素更改一次(从 2 开始);如果 FALSE 到 TRUE,如果 TRUE 到 FALSE, 第 3 步每隔三个元素更改一次,依此类推。
这是我目前所拥有的:
X = rep(FALSE,100)
for (i in X) {
if (i == X[1]) {
X[X%%1==0] == TRUE
} else {
i = i+1
k = X[X%%i==0]
for (i in k) {
if (k == TRUE) {
replace(X, k, FALSE)
} else {
replace(X, k, TRUE)
}
}
}
}
最后,我希望结果将所有为 TRUE 的元素相加,但我不知道如何将其放入循环中。
非常感谢所有帮助!
【问题讨论】:
-
对不起,如果我不清楚,我的意思是步骤(如下面的 Hack-R 所猜测的)。