http://www.perlmonks.org?node_id=948530

kikuchiyo has asked for the wisdom of the Perl Monks concerning the following question:

The problem:

Write a function -- with as few characters as possible -- that, given a positive integer, prints it in a seven segment display style, similar to that found on calculators.

Input:

w(1234567890);

Output:

_ _ _ _ _ _ _ _ | _| _||_||_ |_ ||_||_|| | ||_ _| | _||_| ||_| _||_|

My best effort so far:

sub w{for$;(0..2){say map{substr' _ _|_ | |_|',('030030000054116224 +666421416461'=~/./g)[$_+$;*10]*2,3}split//,$_[0]}}