R语言怎么编写分段函数

img

求解决这个问题的代码
再附上我乱写的代码不知道为什么会报错怎么都算不出来

img

代码这样写即可 :

f<-function(x){
    if (x<2)
    y=x+1
    else if (x>=2 && x<=8)
    y=3*x
    else if(x>8&&x<=20)
    y=4*x-5
    else
    y=sin(x)+cos(x)
    return(y)
}

print(f(0))
print(f(2))
print(f(10))
print(f(100))

运行结果如下:

F:\2021\qa>Rscript "f:\2021\qa\ot2\rtest\r36.r"
[1] 1
[1] 6
[1] 35
[1] 0.3559532