谁能解释一下这个VB杨辉三角的代码?
PrivateSubForm_click()Dima()AsSinglen=Val(InputBox("请输入行数","杨辉三角"))ReDima(n+1,n+1)For...
Private Sub Form_click()
Dim a() As Single
n = Val(InputBox("请输入行数", "杨辉三角"))
ReDim a(n + 1, n + 1)
For i = 1 To n
For j = 1 To i
a(i, 1) = 1
a(i, i) = 1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1)
Print a(i, j);
Next j
Print
Next i 展开
Dim a() As Single
n = Val(InputBox("请输入行数", "杨辉三角"))
ReDim a(n + 1, n + 1)
For i = 1 To n
For j = 1 To i
a(i, 1) = 1
a(i, i) = 1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1)
Print a(i, j);
Next j
Next i 展开
1个回答
展开全部
Private Sub Form_click()
Dim a() As Single '设数组A,为单精度型
'通过对话框取得行数,放到变量N中
n = Val(InputBox("请输入行数", "杨辉三角"))
'根据N值重定义数组A为2维的N+1的数组
ReDim a(n + 1, n + 1)
For i = 1 To n '第1层FOR,让I从1,FOR 到N,用来打印行数
For j = 1 To i ' 第2层FOR, 让J从1FOR 到I, 可以想象,每行的数字因为I的累加, 个数也在变化
a(i, 1) = 1 '让每次数组的最左端为1
a(i, i) = 1 '让每次数组的最右端为1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1) '让数组中间的元素等于此元素所在序号的步长加1
Print a(i, j); '打印,数组A(I,J),使用;号使每个J循环中的打印不换行
Next j
Print '每个J循环完成,打印换行
Next i
End Sub
Dim a() As Single '设数组A,为单精度型
'通过对话框取得行数,放到变量N中
n = Val(InputBox("请输入行数", "杨辉三角"))
'根据N值重定义数组A为2维的N+1的数组
ReDim a(n + 1, n + 1)
For i = 1 To n '第1层FOR,让I从1,FOR 到N,用来打印行数
For j = 1 To i ' 第2层FOR, 让J从1FOR 到I, 可以想象,每行的数字因为I的累加, 个数也在变化
a(i, 1) = 1 '让每次数组的最左端为1
a(i, i) = 1 '让每次数组的最右端为1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1) '让数组中间的元素等于此元素所在序号的步长加1
Print a(i, j); '打印,数组A(I,J),使用;号使每个J循环中的打印不换行
Next j
Print '每个J循环完成,打印换行
Next i
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询