Update: Fixed scrolling issue in text mode console
#!/usr/bin/perl
$m=q\$g=59;$s=23;@v=($",$",'.',';','x','X','M');$t=[map{[(s
plit('',$_))[0..$g]]}reverse+split($/,$m)];sub'i{($b)=@_;$b
->[0]=[(0 )x($g+1) ];for(@{$b->[ 0]}){$_=$
#v*(int(r and(7)) <3);}for(1. .($s)){@{
$b}[$_]=[ (0)x( $g+1)]; }}sub'p{( $b)=@_;sy
stem($^O= ~/MSW in32/?' cls':'c lear');$s
tr='';for $r(reve rse(0 ..$s)){fo
r$c(0..$g ){$str.=( $t ->[ $r ][$c]eq$"
?$":@v[in t$b->[$r][$c]]); }$s tr. =$/;}prin
t$str;}su b'f{($x)=@_;$b=[ ];i($b);for$r (1..($s-1
)){for$c( 1..($g-1)){if(in t(rand(2))){$ v=0;for$r
i(-1..1){ for$ci(-1..1){$v +=$x->[$r+$ri ][$c+$ci]
;}}$b->[$r][$c]=$v/9;}else{$b->[$r][$c]=$x->[$r-1][$c];}}}r
eturn $b;}$z=[];i($z);p($z);while(1){$z=f($z);p($z);}\;$m.=
"$/$/$/$/$/$/1;$/$/$/$/$/$/$/";;s//$m/;s/$"//g;s|$/||g;eval
[TINPC@perlcabal.com shh]$ su real
In reply to PM Obfu
by Felonious
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|