Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Golf: overtone calculator

by jynx (Priest)
on Sep 01, 2002 at 19:15 UTC ( #194469=note: print w/ replies, xml ) Need Help??


in reply to Golf: overtone calculator


just quickly,

Here's a slightly shorter version that still compiles under strict and warnings. i only have tested it under the single test case above, if it fails others please provide them and i'll try to correct it. Anyway, this weighs in at 66 characters:

sub Harmonics ($$) { #23456789_123456789_123456789_123456789_123456789_123456789_123456789_ for$a(1..pop){$_{sprintf'%.3f',$_[0]*$a/$_}++for 1..$a}sort keys%_ }
jynx


Comment on Re: Golf: overtone calculator
Download Code
Replies are listed 'Best First'.
Re: Re: Golf: overtone calculator
by Django (Pilgrim) on Sep 01, 2002 at 23:18 UTC

    Impressing inner loop, but your sort will fail with $_[1] > 10, because it sorts lexically.

    ~Django
    "Why don't we ever challenge the spherical earth theory?"


      Does this fix the problem? (at 72 chars):
      sub Harmonics ($$) { #23456789_123456789_123456789_123456789_123456789_123456789_123456789_ +12 for$a(1..pop){$_{sprintf'%.3f',$_[0]*$a/$_}++for 1..$a}sort{$a-$b}keys +%_ }
      jynx
        I'm outta votes right now, but kudos for the $a-$b bit. D'oh..

        Makeshifts last the longest.

        Does this fix the problem?

        Yepp, not only working, but kicking out my sort too!

        ~Django
        "Why don't we ever challenge the spherical earth theory?"

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (18)
As of 2015-07-30 20:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (273 votes), past polls