求解VB编程中,利用双重循环用*号输出三角形,请说明为什么(很急!)
1个回答
展开全部
外循环确定将要打印多少行,内循环则要确定每一行要打印多少个*和多少个空格,自己把行数和每一行要打印的*和空格的个数列出来找规律,相当于高中时的数学归纳法。比如说:要打印三行*组成一个三角形,代码如下(图形如下):
*
***
*****
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
Dim k As Integer
For i = 1 To 3
For j = 1 To 3 - i + 1
Print " ";
Next j
For k = 1 To 2 * i - 1
Print "*";
Next k
Print
Next i
End Sub
现在只能按照这个程序打印出的图形分析,需要看图形找规律。由于第三行的左边也有一个空格,所以从上到下每行的第一颗*的左边的空格数依次是3,2,1,相当于数组中的a1,a2,a3(即打印空格那个循环的变量);而行数是第1,2,3行,相当于数组的下标(外循环的变量) 则有
1 3
2 2
3 1
. .
. .
. .
i j
不难看出有:j=3-i+1 (等差数列)
打印*的问题也可以这样推断出来。
*
***
*****
Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
Dim k As Integer
For i = 1 To 3
For j = 1 To 3 - i + 1
Print " ";
Next j
For k = 1 To 2 * i - 1
Print "*";
Next k
Next i
End Sub
现在只能按照这个程序打印出的图形分析,需要看图形找规律。由于第三行的左边也有一个空格,所以从上到下每行的第一颗*的左边的空格数依次是3,2,1,相当于数组中的a1,a2,a3(即打印空格那个循环的变量);而行数是第1,2,3行,相当于数组的下标(外循环的变量) 则有
1 3
2 2
3 1
. .
. .
. .
i j
不难看出有:j=3-i+1 (等差数列)
打印*的问题也可以这样推断出来。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询