1. repeat循环语句
> f=1
>f[2]<-2
> i=1
>repeat{
+f[i+2]<-f[i]+f[i+1]
+i<-i+1
+if(f[i]+f[i+1]>100) break
+ }
> f
[1] 1 2 3 5 8 1321 34 55 89
2. 二分法求方程的根
>fzero <- function(f, a, b, eps=1e-5){
+ if (f(a)*f(b)>0)
+ list(fail="finding root isfail!")
+ else{
+ repeat{
+ if(abs(a-b)<eps) break
+ x<-(a+b)/2
+ if(f(a)*f(x)<0) b<-x
+ else a<-x
+ }
+ list(root=(a+b)/2,fun=f(x))
+ }
+ } 二分法程序
> f<-function(x) x^3-x-1 定义一函数
> fzero(f,1,2,1e-5) 调用二分法程序
$root
[1] 1.324718
$fun
[1] -1.405875e-05