VB编程问题:关于非波那切数列

来源:百度知道 编辑:UC知道 时间:2024/05/25 12:33:53
求2/1,3/2,5/3,8/5,……,的前N项的和:
帮我看看我哪里设计错了……
Private Sub Form_Click()
Dim a As Integer, b As Integer, s As Single, n As Integer
n = Val(InputBox("请输入一个正整数"))
a = 1
b = 1
s = 0
For i = 1 To n
If i <= n Then
b = a + b
a = b - a
s = s + b / a
i = i + 1
End If
Next
Print s
End Sub

这个用Do while ...Loop最好

循环语句改成(因为要计算n项,所以肯定是要循环n次的):
i = 1
Do While i <= n
b = a + b
a = b - a
s = s + b / a
i = i + 1
Loop

在form中输出时要有show,即在print上面写上show就可以运行了。

Dim s As Single, i As Integer, t As Single, a As Single, b As Single, c As Single

Dim d As Single, e As Single, f As Single
s = 7 / 2: i = 1: a = 2: b = 3: d = 1: e = 2 's为前两项之和
While i <= 18 'i到18时,s的总项数为20项

c = a + b
a = b
b = c '置换分子为c
f = d + e
d = e
e = f '置换分母为f
t = c / f '分项表达式
s = s + t '求和
i = i + 1 '继续循环

Wend

Print s

这个是我做的..你的没仔细看,不过你连I都没定义