按键精灵 杨辉三角

Call yanghui(10)

//实现原理:
//
//①每一行的第一列数为1;
//
//②每一行的最后一列数为1;
//
//③某行某列数 = 上一行该列数 + 上一行(该列-1)数
Sub yanghui(line)
    //这里只能先把数组空间定义大一点 因为按键没有其他语言的动态数组的行为
    //Dim arr(Int(line),Int(line))//此处4写为line 会报错 。这个地方我不知道怎么处理了
    Dim arr(10,10)
    //为每一列动态分配空间
    //保存三角

    For i = 0 To line-1
  
        //每一行的第一列数为1
        arr(i,0) = 1   
        //每一行的最后一列数为1
        arr(i,i) = 1	
        //赋值
        Dim j
        j = 1
      
        While (j < i)
    
         arr(i, j) = arr(i - 1, j) + arr(i - 1, j - 1)
    
              j=j+1
        Wend
       
    Next
    For i = 0 To line-1
    	Dim res
    	 	res=""
    	 For j = 0 To line-1
    	 
    	 If arr(i, j) <> "" Then 
    	res=res+ " "&arr(i, j)	
    	 End If
    
    	 
    	
    	
    Next
    	 TracePrint res
    Next
 
End Sub
发布了1997 篇原创文章 · 获赞 507 · 访问量 252万+

猜你喜欢

转载自blog.csdn.net/mp624183768/article/details/104086651