以下数列:1,1,2,3,5,8,13,21,…,的规律是从第三个数开始,每个数是它前面两个数之和。
在考生文件下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件,如图4所示。请编写适当的事件过程完成以下功能:选中一个单选按钮后,单击“计算”按钮,则计算出上述数列的第n项的值,并显示在文本框中,n是选中的单选按钮后面的数值。(提示:因计算结果较大,应使用长整型变量。)
注意:不能修改已经给出的程序和已有的控件属性;在结束程序运行之前,必须选中一个单选按钮,并单击“计算”按钮获得一个结果;必须使用窗体右上角的关闭按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。
参考答案:[操作步骤]
第1步:打开题目对应工程文件sjt5.vbp。
第2步:双击“计算”按钮进入代码编写窗口,编写代码。
参考代码如下:
Private Sub Command1_Click()
Dim SL() As Long
Dim n As Integer
’通过被选中的单选按钮的标题属性得到需要计算的项数
If Op1(0).Value=True Then
n=Val(Op1(0).Caption)
Elself Op1(1).Value=True Then
n=Val(Op1(1).Caption)
Else
n=Val(Op1(2).Caption)
End If
ReDim SL(1 To n) ’根据项数定义数组
SL(1)=1
SL(2)=1
For i=3 To n
SL(i)=SL(i-1)+SL(i-2) ’通过下标表示各数之间的关系
Next i
Text1=SL(n)
End Sub
第3步:调试、运行并保存程序。
解析: 题目中所指的数列就是著名的斐波那契数列。可以有多种方法求出斐波那契数列,其中一种方法是用数组来存储数列的各个值,因为数组的下标可以方便地表示出前后数之间的关系。
题目中要求:“单击‘计算’按钮,则计算出上述数列的第n项的值”,所以应该在“计算”按钮的单击事件过程完成数列的计算。计算时可以根据当前选中的单选按钮的标题得到应该计算的项数。