# Re: pp Pascal (#84)

**URL:** <https://www.ruby-forum.com/t/re-pp-pascal-84/96510>\
**Category:** Ruby\
**Created:** [June 29, 2006, 4:58am UTC](https://www.ruby-forum.com/t/re-pp-pascal-84/96510 "2006-06-29T04:58:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![PeSSSSaS\_Botp](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/ecd19e/32.png) [@PeSSSSaS\_Botp](https://www.ruby-forum.com/u/PeSSSSaS_Botp)\
**Post date:** [June 29, 2006, 4:58am UTC](https://www.ruby-forum.com/t/re-pp-pascal-84/96510/1 "2006-06-29T04:58:04Z")

</div>

Kelly wrote:

# puts (0…ARGV.first.to\_i).inject([[1]]) { |a,x|

puts (0…(ARGV.first||“6”).to\_i).inject([[1]]) { |a,x|

just a minor pick for easy cutnpaste then run. defualt of 6 rows.

cool hack, btw.  
kind regards -botp

# a.unshift a.first.inject([0,[]]) { |b,y|

# [y,b.last \<\< (b.first + y)]

# }.last + [1]

# }.inject([]) { |c,z|

# next [z[z.length/2].to\_s.length\*2,z.length,“”] if c.empty?

# [c[0],c[1], z.map { |j|

# j.to\_s.center(c[0])

# }.join(‘’).center(c[0]\*c[1])+“\n#{c.last}”]

# }.last

# 

# 

# /kel

# [http://web.kellegous.com/](http://web.kellegous.com/)

# 

#
