【VB教学】函数与递归

一、教学目的:

(1)、认识函数,会编写简单函数

(2)、理解递归的过程,能看懂递归函数

 

二、教学思路:

(1)、用VB自带函数引入自定义函数

(2)、尽量把递归函数简单化

三、教学过程

(1)、导入

      VB中有很多自带的函数,如int、sqr等

      d = Sqr(b * b - 4 * a * c)
      b=int(7.6)
      b=int(a)
      Print Abs(x - y)

      我们只要输入一个参数,就可以返回值。

     总结:函数有三部分组成1、函数名  2、参数(7.6 ,a)  3、返回值

 

(2)、讲解自定义函数,以及自定义函数的优点

 

Private Function area(x As Single) As Single
    Const pi = 3.14159
    area = x * x * pi
End Function

Private  sub command1_click
   dim r as single
   dim s as single
   r=val(text1.text)
   s=area(r)
   print s;
end sub

 

(3)、引入递归

如果有个函数求fac阶乘的,那么fac(5)=5*fac(4),

Private Function fac  (n as integer)  As integer
   fac = n*fac(n-1)
End Function
对于一个递归定义而已,除了要定义递归的方式(即如何递归)外,还必须定义递归的终止条件(即如何停止递归),否则递归将永无止境的进行下去。

fac(n)=n*fac(n-1)  (n>1)

fac(n)=1               (n=1)

 

 

递归函数的要点:
1、要有一个递推表达式(例如:f(n)=f(n-1)*n)
2、递归结束的条件(n=1时,f=1),又称为边界条件。

 

(4)、学生作业

 

  1. 斐波那契数列
  2. 计算阶乘
  3. 数列求和
  4. 圆环面积

 

 四、反思

1、需要让学生理解函数调用的过程

2、递归比较难懂,可以从小时候听到的故事(从前有座山讲起)

 

五、学生作业

 

posted @ 2010-03-26 14:54  jesonpeng  阅读(1254)  评论(0编辑  收藏  举报