您的位置:首页 > 其它

erl_list-打印杨辉三角

2015-09-14 11:32 239 查看
%%=======================================
%%打印杨辉三角
%% 杨辉三角形是形如:
%% 1
%% 1   1
%% 1   2   1
%% 1   3   3   1
%% 1   4   6   4   1
%% 的三角形,其实质是二项式(a+b)的n次
%% 方展开后各项的系数排成的三角形,它的特点是左右两边全是1,从第二行起,中间的每一个数是上一行里相邻两个数之和。
%%
yanghui(N)->
yanghui1(1,N,[]).

yanghui1(C,N,PreQ) when C =< N ->
NextQ=
lists:foldl(fun(C1,NQ)->
case C1 > 1 andalso C1 < C andalso C1 =< length(PreQ) of
true->
Tem = lists:nth(C1,PreQ)+lists:nth(C1-1,PreQ),
io:format("  ~p",[Tem]),
NQ ++ [Tem];
_->
io:format("  ~p",[1]),
NQ ++ [1]
end
end,[],lists:seq(1,C)),
io:format("     ~n",[]),
yanghui1(C+1,N,NextQ);
yanghui1(_,_,_)->
nil.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: