lua语言,杨辉三角

来源:互联网 发布:mallat算法 编辑:程序博客网 时间:2024/06/18 09:06

用lua语言写的杨辉三角

代码如下:

--[[--
--@param #number m 传递过来第几行
--@param #number n 传递过来第几列
--@return #number 返回计算得结果
--]]
local function f( m , n )
     if (m == 1) then
     return 1;
     end
     if( n== 1 or n == m)then
     return 1;
     end
     return f(m-1 , n-1) + f(m-1 , n);
end


--[[--
--@param #number x 传递输入过来的值
--]]
 local function printEnd(x)
     for i = 1 , x do
        for j = 1 , i do
        print(f(i , j).." ")
        end
        print("\n")
     end
 end


 --  输入数值
 local function inputA()
 print("请输入一个数:")
     a = io.read();
     b = tonumber(a);
     printEnd(b);
 end


--   输出结果
 local function main()
       inputA()
 end
 main()

当你输入这个数是:9

则出现下面这个结果

         

1
                 
1
 
1
               
1
 
2
 
1
             
1
 
3
 
3
 
1
           
1
 
4
 
6
 
4
 
1
         
1
 
5
 
10
 
10
 
5
 
1
       
1
 
6
 
15
 
20
 
15
 
6
 
1
     
1
 
7
 
21
 
35
 
35
 
21
 
7
 
1
   
1
 
8
 
28
 
56
 
70
 
56
 
28
 
8
 
1


0 0