in reply to (Golf) LED Sign
Here is a program that writes a file that has a 186-char subroutine which is my golf entry:
So if you download this code into a file called, for example, "seg1.pl", then you could do the following:#!/usr/bin/perl open SEG, ">segment.pl" or die "Can't write seg.pl: $!\n"; binmode SEG; while(<DATA>){ s/::::::::/pack"H*",'1f10001100100111'/e; s/!!!!!!!!!!!!!!!/pack"H*",'fca88a04228f12420caacc30125084'/e; print SEG $_; } __END__ #!/usr/bin/perl sub d{ y/01/ #/for@p=unpack"b5"x8,"::::::::"; y/-./ab/for@n=split//,pop; @s=grep$_,split/(..)/,unpack"b*",'!!!!!!!!!!!!!!!'; map{$l=$_;join" ",map($p[$l<<2&4|3&$s[$l+5*hex$_]],@n),$/} 0,1,1,2,3,3,4 } print d("123-45"); print d("67.890");
$ perl seg1.pl $ perl segment.pl # ##### ##### # # ##### # # # # # # # # # # # # # ##### ##### ##### ##### ##### # # # # # # # # # # # ##### ##### # ##### ##### ##### ##### ##### ##### # # # # # # # # # # # # # # # # ##### # ##### ##### # # # # # # # # # # # # # # # # # # ##### # # ##### ##### ##### $The reason for the extra step is that I have two binary strings as part of my subroutine.
I suspect the sub can be golfed quite a bit still... Have fun. (:
- tye (but my friends call me "Tye")
|
---|
Replies are listed 'Best First'. | |
---|---|
(tye)Re2: 177- (Golf) LED Sign
by tye (Sage) on Jun 08, 2001 at 18:39 UTC |