Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^3: How to create loop in perl dynamically

by adithi (Initiate)
on Sep 26, 2012 at 14:20 UTC ( #995782=note: print w/replies, xml ) Need Help??

in reply to Re^2: How to create loop in perl dynamically
in thread How to create loop in perl dynamically

I tried this, $index is input
Here if $index =2, foreach gets created 2 times, But how do i code inside this and control loop parameters.
Please suggest
  • Comment on Re^3: How to create loop in perl dynamically

Replies are listed 'Best First'.
Re^4: How to create loop in perl dynamically
by johngg (Abbot) on Sep 26, 2012 at 14:31 UTC

    By default the loop variable is held in $_ but you can assign to a variable if you wish. It is not a good idea to alter loop variables inside the loop, that leads to all sorts of grief.

    $ perl -Mstrict -Mwarnings -E ' > foreach my $outer ( 1 .. 3 ) > { > foreach my $inner ( 7 .. 9 ) > { > say qq{$outer x $inner = @{ [ $outer * $inner ] }}; > } > }' 1 x 7 = 7 1 x 8 = 8 1 x 9 = 9 2 x 7 = 14 2 x 8 = 16 2 x 9 = 18 3 x 7 = 21 3 x 8 = 24 3 x 9 = 27 $

    I hope this is helpful.



Re^4: How to create loop in perl dynamically
by sundialsvc4 (Abbot) on Sep 26, 2012 at 15:52 UTC
    foreach my $foo (1 .. $x) ... creates a local variable named $foo which contains the current index for this particular loop.   Never use $_ for this purpose, usually.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://995782]
[stevieb]: I really dislike how perlbrew doesn't list your version of perl if a newer minor version bump has happened. eg: I use 5.24.1, but 5.24.2 is available, hiding my 5.24.1. I may look at this, as I made it display correctly in berrybrew in cases like this
[stevieb]: choroba just gleaned your post about Module::Starter. I use it too, pretty much for every dist I write
[LanX]: I remeber M::S (it was dialog driven?) to be buggy
[stevieb]: As far as Dist::Zilla goes, I don't like installing that other than on systems my test platorm runs on. I find it too heavy. I prefer being able to glean a Makefile.PL
[LanX]: what's frustrating me is that a distribution has lots of dupplicated info
[stevieb]: LanX I don't know if it's dialog driven; I just use it in the simplest of terms (just run module-starter at the CLI, and the very last couple of lines are how I use it.

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2017-08-18 20:50 GMT
Find Nodes?
    Voting Booth?
    Who is your favorite scientist and why?

    Results (310 votes). Check out past polls.