ruby 帕斯卡的三角形

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 帕斯卡的三角形相关的知识,希望对你有一定的参考价值。

def pascal_triangle n
  next_row = ->(row) { ([0] + row).zip(row + [0]).map {|l,r| l + r} }
  row = ->(n) { n.times.inject([1]) {|x| next_row[x]} }
  n.times { |t| p row[t] }
end

def pascal_tr n
  row = Enumerator.new { |y, row=[1]| loop { y << row; row = ([0]+row).zip(row+[0]).map { |l,r| l+r } } }
  n.times { p row.next }
end

以上是关于ruby 帕斯卡的三角形的主要内容,如果未能解决你的问题,请参考以下文章