Vb.net 求被波那契数列.....显示超出数组界限.
vb.net吧
全部回复
仅看楼主
level 3
Arvinლ0 楼主
Vb.net 求被波那契数列.....显示超出数组界限.
2018年12月21日 17点12分 1
level 3
Arvinლ0 楼主
有大神给指点一下吗
2018年12月22日 05点12分 2
level 1
'' 斐波那契数列, 不是被波那契数列。
Dim n As Integer
Dim tmp As String
Dim lngFBNQ() As Long
'' 给界面元素指定一个有意义的名称,可以方便维护。
n = CInt(TextBox1.Text)
'' 不是i = n - 1
n = n - 1
'' 你的越界是因为你的数组长度定义为2。
'' 你的所有元素均已重新赋值,不应当使用Preserve关键字。
'' 且只需指定大小完全可以满足要求。
'' 以上两点可以提升效率。
ReDim lngFBNQ(n)
lngFBNQ(0) = 1
lngFBNQ(1) = 1
'' tmp的理论值应当是“1,1,”,即应当包含前两个1。
tmp = ""
For i As Integer = 2 To n
lngFBNQ(i) = lngFBNQ(i - 1) + lngFBNQ(i - 2)
'' 应当避免在循环里面为修改界面,以提高速度。
tmp &= lngFBNQ(i) & ","
Next
'' 此处理论上应当用=号替代&=。
TextBox2.Text &= tmp
2018年12月24日 07点12分 3
我应该怎么去学习数组呢,我觉得教材和老师讲的不足以支持我做动态数组的题目..
2018年12月24日 13点12分
clnt是什么
2018年12月24日 13点12分
转换为整数,官方文档:docs.microsoft.com/zh-cn/dotnet/visual-basic/language-reference/functions/type-conversion-functions#cint-example
2018年12月25日 11点12分
@Arvinლ0 数组可以参考我写的笔记,在本吧里找,很好找的,不发链接,防止度娘吞楼。
2018年12月25日 11点12分
level 3
Arvinლ0 楼主
谢谢了....
2018年12月24日 13点12分 4
1