#! /usr/bin/perl use strict; use warnings; $/ = length( $" = int ) + 1; for $! ( 1 .. $" ) { print $_< $" + 1 - $! ? " " x $/ : $_ <= $" ? sprintf "%*d", $/, $" + 1 - $_ : $_ <= $" + $! - 1 ? sprintf "%*d", $/, abs $" - 1 - $_ : $_ == 2 * $" ? "\n" : "" foreach ( 1 .. ( 2 * $" ) ); }