Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: A matrixy japh

by Zaxo (Archbishop)
on Aug 26, 2001 at 04:07 UTC ( #107869=note: print w/replies, xml ) Need Help??


in reply to A matrixy japh

There are problems with this code:

$ perl -c cube.pl Missing $ on loop variable at cube.pl line 4. $

You are sticking whitespace into keywords. Did you run it first, then format?

Form follows function.

After Compline,
Zaxo

Replies are listed 'Best First'.
Re: Re: A matrixy japh
by jryan (Vicar) on Aug 26, 2001 at 04:16 UTC

    Yeah, I did. It would be insane to try and code like that. I probably accidentally deleted a character or ran two things together. Here, ill post a non-obfu version: (although that ruins the fun!)

    #!\perl\bin\perl -w use strict; my $tm; foreach my $i (0..78) { $tm .= chr($i+48); } my $m=0; my @ta; foreach my $y (0..12) { foreach my $n (0..5) { $ta[$y][$n] = substr($tm, $m, 1); $m++; } } sub encryptor { my $w = shift; my ($r, $r1, $r2, $c1, $c2); for (my $i=0; $i<length($w); $i+=2) { if ($i<(length($w)-1)) { my $w1 = substr($w, $i, 1); my $w2 = substr($w, $i+1, 1); foreach my $y (0..12) { foreach my $n (0..5) { if ($ta[$y][$n] eq $w1) { $r1=$y; $c1=$n; } } } foreach my $y (0..12) { foreach my $n (0..5) { if ($ta[$y][$n] eq $w2) { $r2=$y; $c2=$n; } } } if ($r1 == $r2 || $c1 == $c2) { $r.=$w2; $r.=$w1; } else { $r .= $ta[$r2][$c1]; $r .= $ta[$r1][$c2]; } } else { $r.=substr($w, $i, 1); } } return $r; } my @j=("vits", "mbunbkr", "dqlr", "bgiew`"); foreach my $a (@j){print encryptor($a), " ";}
      It would be insane to try and code like that.

      No it wouldn't. I strongly suggest you look at Erudil's camel code and how it works to find some creative ways to use eval.

      You code is very nice looking, it's shame it doesn't run. You have enough room on the first edge of the cube to stick in something like s/\s+//g;eval that would transform the rest of the code into something that actually compiles.

      Naturally it's not that easy, because you have to define $_ (which will be after, since it's the rest of the cube). I am sure you can find a way to keep your code cube-shaped and make it run.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://107869]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (8)
As of 2020-01-23 21:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?