visual basic程序设计教程第四版答案(刘炳文)
VB编程:斐波纳契(Fibonacci)数列的第一项是1,第二项是1,以后各项都是前两项的和,试用递归算法和非递归算法各编写一个程序,求斐波纳契列前N项和第N项的值。
[1]非递归算法。
Sub Fibonacci(n As Integer)
f1 = 1
f2 = 1
For i = 1 To n
Print f1, f2,
If i Mod 2 = 0 Then
Print
End If
f1 = f1 + f2
f2 = f2 + f1
Next i
End Sub
Private Sub Form_Click()
Fibonacci (20)
End Sub
运行此VB源码后,点击窗体,结果情况如下图所示:
[2]递归算法
首先编写递归算法的过程:
Private Static Function fib(ByVal k As Integer)
If k <= 2 Then
fib = 1
Exit Function
Else
fib = fib(k - 1) + fib(k - 2)
End If
End Function
然后在窗体建立两个按钮。编写代码如下:
Private Sub Command1_Click()
Print
k = InputBox("", "将输出斐波纳数列的前几项", "7")
k = CInt(k)
Print "数列的前"; k; "项是:"
For i = 1 To k
d = fib(i)
Print d,
If i Mod 4 = 0 Then Print
Next i
End Sub
Private Sub Command2_Click()
Dim k As Long
k = InputBox("", "将输出斐波纳数列的第几项", "7")
k = CInt(k)
d = fib(k)
Print
Print "数列的第"; k; "项是:"; "f(" & k & ")=" & d
End Sub
Private Sub Form_Load()
Command1.Caption = "输出前N项"
Command2.Caption = "输出第N项"
End Sub
运行此VB源码后,分别点击两个按钮,输入数据,结果情况如下图所示:
visual basic 程序设计教程第四版答案 刘炳文 编著
来源:visual basic程序设计教程第四版答案(刘炳文)
本文链接:http://www.wb98.com/vb1/post/vb_9.6.html
本站文章搜索: