求助!R语言用条件循环求和

Python013

求助!R语言用条件循环求和,第1张

x= 0

for(i in 1:999){

  if(i%%3==0 | i%%5==0) x=x+i

}

x

求余的符号是%%,而不是/整除

你的思维太像C,只要一个if,一个条件就行

i也不用叠加,会自动叠加的

一、循环和向量化

1、控制结构

(1)条件语句

if(条件) 表达式1 else 表达式2

(2)循环(loops)

for :for(变量 in 变量) 表达式

while while(条件)表达式

repeat repeat 表达式

三者略有区别:若知道终止条件(循环次数)就用for循环,若无法知道运行次数,则用while和repeat循环,repeat循环利用循环体的break语句跳出循环

赋默认值,在for循环中进行修改。

编程中减少代码重复的两个工具,一是循环,一是函数。循环,用来处理对多个同类输入做相同事情(即迭代),如对不同列做相同操作、对不同数据集做相同操作。R语言有三种方式实现循环:for循环、while循环。apply函数族。泛型函数map。

apply函数族和泛型函数map能够更加高效简洁地实现一般的for循环、while循环,但这不代表for循环、while循环就没用了,它们可以在更高的层次使用(相对于在逐元素级别使用)。