Note1: If you're on *nix I guess you need to change 'cls' to the right clear screen command.use strict;use subs qw(r p j u k);my@M=split'' ," REKCAH LREP REHTONA TSUJ";my@s;for my$y(0.. $#M){for(0..79){$s[$y][$_]=" "}}my@m=@M;{push@ {$s[0]},k\@m;@m=@M if$#m<0;for(0,0){@s=r@s;u\@ {$s[$_]};@s=r@s;k\@{$s[$_]};u\@{$s[$#s-$_]};@s =r@s;my$k=k\@{$s[$#s-$_]};@s=r@s;$s[$_][j@{$s[ $_]}]=$k}p@s;redo}sub r{my@r;for my$y(0..$#_){ for my$x(0..j(@{$_[$y]})){$r[$x][$y]=$_[$y][$x ]}}@r}sub p{system'cls';for(@_){print for(@$_) }}sub u{pop@{$_[0]};unshift@{$_[0]}," "}sub j{ $#_}sub k{shift@{$_[0]}}BEGIN{$|=1}
Note2: If you leave it running for a while it'll eventually die.
Note3: It'll complain if warnings are turned on
PS: Don't know if the 'use subs' ruined some fun, but I guess that the main thing is figuring out how it works, not trying to find hidden code.
Update: As jdalbec noted, setting on autoflush gives betters results, so I added that BEGIN "hack" in order to maintain the "metric" of the code.
acid06
perl -e "print pack('h*', 16369646), scalar reverse $="
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Rusty?
by jdalbec (Deacon) on Oct 03, 2004 at 23:22 UTC | |
Re: Rusty?
by opqdonut (Acolyte) on Oct 05, 2004 at 18:39 UTC |
Back to
Obfuscated Code