循环语句

Reads: 861 Edit

1 for语句

for(i in 1:n){
  表达式
}

for语句计算n的阶乘

n=10       # 阶乘的阶数
f=1        # 阶乘初始值
for(i in 1:n){
  f=f*i
}
f
[1] 3628800

判断一个数是否为质数

判断97是否为质数:

num=97
for(i in 2:(num-1)){
  if(num<=1) {
    print(paste(num,"不是质数!")) 
    break
  }
  if(num==2) {
    print(paste(num,"是质数!")) 
    break
  }
  if(num %% i==0) {
    print(paste(num,"不是质数!"))
    break
  }
  if(i==num-1) {
    print(paste(num,"是质数!"))
    break
  }
}
[1] "97 是质数!"

判断77是否为质数:

num=77
for(i in 2:(num-1)){
  if(num<=1) {
    print(paste(num,"不是质数!")) 
    break
  }
  if(num==2) {
    print(paste(num,"是质数!")) 
    break
  }
  if(num %% i==0) {
    print(paste(num,"不是质数!"))
    break
  }
  if(i==num-1) {
    print(paste(num,"是质数!"))
    break
  }
}
[1] "77 不是质数!"

2 for循环嵌套

对数据进行排序

s=c(5,1,8,10,2,9,8)
len=length(s)
for(i in (len-1):1){
  for(j in 1:i){
    if(s[j]>s[j+1]){
      temp=s[j+1]
      s[j+1]=s[j]
      s[j]=temp
    }
  }
}
s
[1]  1  2  5  8  8  9 10

3 while语句

采用while语句计算n的阶乘

n=10
f=1
i=1
while(i<=10){
  f=f*i
  i=i+1
}
f
[1] 3628800

Comments

Make a comment