Hi all, I'm new to perl and would appreciate any help that you could give me on this bit of redundant code:
my ($frame,$value); foreach (@values) { my $boo = $hits{$myorgs{$title_order{$count}}}; if ($boo eq "Self") { $frame = $tab->Label(-bg => 'black', -relief => 'sunken +', width => 10); } else { if ($boo == 0) { $frame = $tab->Label(-bg => 'red', -relief => 'sunke +n', width => 10); $balloon->attach($frame,-balloonmsg => "E = 0"); } if (1e-99 <= $boo && $boo < 1e-90) { $frame = $tab->Label(-bg => 'orange', -relief => 'su +nken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-99 < E < +1e-90"); } if (1e-90 <= $boo && $boo < 1e-80) { $frame = $tab->Label(-bg => 'gold', -relief => 'sunk +en', width => 10); $balloon->attach($frame,-balloonmsg => "1e-90 < E < +1e-80"); } if (1e-80 <= $boo && $boo < 1e-70) { $frame = $tab->Label(-bg => 'yellow', -relief => 'su +nken', width => 10); $balloon->attach($frame,-balloonmsg <br>=> "1e-80 < +E < 1e-70"); } if (1e-70 <= $boo && $boo < 1e-60) { $frame = $tab->Label(-bg => 'chartreuse', -relief => + 'sunken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-70 < E < +1e-60"); } if (1e-60 <= $boo && $boo < 1e-50) { $frame = $tab->Label(-bg => 'green', -relief => 'sun +ken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-60 < E < +1e-50");<br> } if (1e-50 <= $boo && $boo < 1e-40) { $frame = $tab->Label(-bg => 'turquoise', -relief => +'sunken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-50 < E < +1e-40"); } if (1e-40 <= $boo && $boo < 1e-30) { $frame = $tab->Label(-bg => 'navy blue', -relief => +'sunken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-40 < E < +1e-30"); } if (1e-30 <= $boo && $boo < 1e-20) { $frame = $tab->Label(-bg => 'lavender', -relief => ' +sunken', width => 10); $balloon->attach($frame,-balloonmsg <br>=> "1e-30 < +E < 1e-20"); } if (1e-20 <= $boo && $boo < 1e-10) { $frame = $tab->Label(-bg => 'purple', -relief => 'su +nken', width => 10); $balloon->attach($frame,-balloonmsg => "1e-20 < E < +1e-10"); } if (1e-10 <= $boo && $boo < 1) { $frame = $tab->Label(-bg => 'grey', -relief => 'sunk +en', width => 10); $balloon->attach($frame,-balloonmsg => "1e-10 < E < +1"); } }
I was trying to put all of the colors, and all of the value strings in 1 or 2 arrays and add a for loop but couldn't seem to get it to work. Any help from people more experienced than I am would be greatly appreciated.

Thanks,
Mark


In reply to slow code help by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.