Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: New to coding - Looping code to save time

by kennethk (Abbot)
on May 11, 2012 at 15:41 UTC ( #970045=note: print w/replies, xml ) Need Help??

in reply to New to coding - Looping code to save time

What materials are you using to learn? has a number of resources available, including free and open access to Beginning Perl by Simon Cozens, and chapter 3 is particularly on point here.

You probably want to store your stop, start, and personal data in arrays (see perldata for a description), which you can then cycle over using Foreach Loops, though for this case it might more sense to use C-style For Loops or while loops. Your code might end up looking something like:

my $daily_total = 0; my $busi_total = 0; my $pers_total = 0; for my $i (0 .. 30) { if ($stop[$i] > 0) { my $daily = $stop[$i] - $start[$i]; my $busi = $daily - $personal[$i]; $daily_total += $daily; $busi_total += $busi; $pers_total += $personal[$i]; } }

Of course, this depends on your ultimate spec - what you take in, what you output, etc.

#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://970045]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (10)
As of 2018-06-19 13:00 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (114 votes). Check out past polls.