【加试题】贝尔三角矩阵是以数学家埃里克·坦普尔·贝尔(Eric Temple Bell)命名的,是组合数学中的一组整数数列。右边表格是5阶贝尔三角矩阵。
采用以下方法可以建构一个贝尔三角矩阵(见图): A.第一行第一项是1。 B.对于n>1,第n行第一项等同第n-1行最后一项。 C.对于m,n>1,第n行第m项等于它左边和左上方的两个数之和。 小明编写了一个生成贝尔在角矩阵的程序,其功能如下: 程序运行时在文本框Text1中输入整数n(1≤n≤9),单击按钮Command1后,在列表框List1上输出n阶的贝尔三角矩阵。
(1)
当n=6时,第6行第2项的数为。
(2)
实现上述功能的VB程序如下,请在划线处填入合适代码。
Private Sub Command1_Click()
Dim n As Integer, s As String, i As Integer,
j As Integer
Dim bell(1 To 100) As Integer
bell(1) = 1
List1.AddItem gs(bell(1))
For i = 2 To n
For j = i To 2 Step -1
bell(j) = bell(j - 1)
Next j
bell(1) = bell(i)
For j = 2 To i
Next j
s = gs(bell(1))
For j = 2 To i
s = s + gs(bell(j))
Next j
List1.AddItem s
Next i
End Sub
Function gs(x As Integer) As String '将x转换为字符串,若不足5位,则用空格补足
Dim i As Integer
For i = 1 To 5 - Len(Str(x))
gs = gs + " "
Next i
End Function
答案: 【1】67
【1】n = Val(Text1.Text)【2】bell(j) = bell(j) + bell(j - 1)【3】gs = Str(x)