Just another Perl shrine PerlMonks

### Re^3: Code Golf: Four is magic

by thundergnat (Deacon)
 on Jul 14, 2010 at 00:28 UTC ( #849399=note: print w/ replies, xml ) Need Help??

in reply to Re^2: Code Golf: Four is magic
in thread Code Golf: Four is magic

That actually has problems with large numbers (> native integer ?) Once it gets over 64 bits on my machine it converts to scientific notation... which throws off the conversion.

Never mind. Broken

Here's my whack at it - 232 strokes

```perl -E'@x=split//,"4335443554366887798866555766";\$_=<>;chop;print;whi
+le(\$_-4){split//,"99aabb87780";\$x=0;\$x+=hex(pop)*!!\$&+(\$1&&\$x[\$1]+7)+
+(\$2>1?\$x[\$2+18]+\$x[\$3]:\$x[\$2.\$3])while s/(.??)(.?)(.)\$//;say" is \$x."
+;print\$_=\$x}say" is magic."'

__END__
999999999999999999999999999999999
999999999999999999999999999999999 is 231.
231 is 19.
19 is 8.
8 is 5.
5 is 4.
4 is magic.

Comment on Re^3: Code Golf: Four is magic
Replies are listed 'Best First'.
Re^4: Code Golf: Four is magic
by duelafn (Priest) on Jul 14, 2010 at 01:50 UTC

Doesn't seem to work right -- (\$1&&\$x[\$1]+7) adds 7 too often and !!\$& has issues with "000".

```# 123456789_123456789_1
# onemilliontwentyfour
# onethousandtwentyfour

echo 1000024 | perl duelafn.pl
1000024 is 20.
20 is 6.
6 is 3.
3 is 5.
5 is 4.
4 is magic.

echo 1024 | perl duelafn.pl
1024 is 21.
21 is 9.
9 is 4.
4 is magic.

echo 1000024 | haarg.pl
1000024 is 13.
13 is 8.
8 is 5.
5 is 4.
4 is magic.

echo 1024 | haarg.pl
1024 is 13.
13 is 8.
8 is 5.
5 is 4.
4 is magic.

echo 1000024 | perl thundergnat.pl
1000024 is 17.
17 is 9.
9 is 4.
4 is magic.

echo 1024 | perl thundergnat.pl
1024 is 13.
13 is 8.
8 is 5.
5 is 4.
4 is magic.

Update tracked doiwn more details of the bugs.

Good Day,
Dean

I did miss some things there. You should still be able to eliminate the @_ from the pop though.

Nope, outside a sub it will pop from @ARGV not @_

Good Day,
Dean

Create A New User
Node Status?
node history
Node Type: note [id://849399]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (12)
As of 2015-11-30 11:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?