【例8-2】编写一个计算N!!的函数过程。 分析:假设函数过程名称为Fact。求N!只 第 需给函数过程设置一个参数N。函数过程 体的功能就是求Fac=N! 代码: Function Fact(N As Integer)As Long 过 Dim I As Integer,FAs Long F=1 ·F用于保存阶乘值 程 For I=1 To N F=F*I Next I Fact F 给函数过程名Fact赋值 End Function 11
第 八 章 过 程 11 分析:假设函数过程名称为Fact。求N!只 需给函数过程设置一个参数N。函数过程 体的功能就是求Fact=N! 【例8-2】编写一个计算N!的函数过程。 代码: Function Fact(N As Integer) As Long Dim I As Integer, F As Long F = 1 ' F用于保存阶乘值 For I = 1 To N F = F * I Next I Fact = F ' 给函数过程名Fact赋值 End Function
【例8-3】编写一个求一维数组各元素和的 函数过程。 分析:假设函数过程名为Sum。本例需要用数组 第八章 作参数,设数组参数名为X,则要在X之后加一 对空圆括号。函数过程的功能就是求数组X的所 有元素之和,保存到函数名Sum中。 代码: 过 Function Sum(XOAs Integer)As Long S=0 程 For I=LBound(X)To UBound(X) S=S+XI) Next I Sum=S 给函数过程名赋值 End Function 12
第 八 章 过 程 12 分析:假设函数过程名为Sum。本例需要用数组 作参数,设数组参数名为X,则要在X之后加一 对空圆括号。函数过程的功能就是求数组X的所 有元素之和,保存到函数名Sum中。 【例8-3】编写一个求一维数组各元素和的 函数过程。 代码: Function Sum(X()As Integer) As Long S = 0 For I = LBound(X) To UBound(X) S = S + X(I) Next I Sum = S ' 给函数过程名赋值 End Function
8.1.2 Function过程的调用 1.调用位置 第八章 直接在表达式中调用。 2.调用格式 函数过程名([实参表) 过 其中, >“实参表”可以是常量、变量、表达式、 程 数组名0 >“实参表”各参数之间用逗号分隔 >实参表的个数、顺序、类型要与形参一致 193 13
第 八 章 过 程 13 8.1.2 Function过程的调用 1. 调用位置 直接在表达式中调用。 2. 调用格式 函数过程名([实参表]) 其中, ➢“实参表”可以是常量、变量、表达式、 数组名() ➢“实参表”各参数之间用逗号分隔 ➢实参表的个数、顺序、类型要与形参一致
【例8-4】输入m和n的值,调用例8-2的函数 过程Fact求组合数。求组合数公式如下: m! 第八章 n!(m-n)! 设计界面: 过 求组合毅 Textl 程 Text2 Command1 Text3 14
第 八 章 过 程 14 【例8-4】输入m和n的值,调用例8-2的函数 过程Fact求组合数。求组合数公式如下: Text2 Text1 Command1 Text3 设计界面: n!(m n)! m! C n m − =
代码设计: 1) 在模块的通用声明段编写例8-2的函数 第八章 过程: Function Fact(NAs Integer)As Long Dim I As Integer,FAs Long F=1 过 For I=1 To N 程 F=F*I Next I Fact=F End Function 193 15
第 八 章 过 程 15 Function Fact(N As Integer) As Long End Function 1)在模块的通用声明段编写例8-2的函数 过程: Dim I As Integer, F As Long F = 1 For I = 1 To N F = F * I Next I Fact = F 代码设计: