http://www.perlmonks.org?node_id=1013679


in reply to Toggling vars in each iterations

Post what you've tried. I barely understand what you are asking...

foreach my $ix(1..10) { $var=($ix%2? $value1:$value2); $var=($ix%s? $value2:$value1);
is that what you are after perhaps?


Peter L. Berghold -- Unix Professional
Peter -at- Berghold -dot- Net; AOL IM redcowdawg Yahoo IM: blue_cowdawg

Replies are listed 'Best First'.
Re^2: Toggling vars in each iterations
by akki_best (Initiate) on Jan 17, 2013 at 02:34 UTC
    Sorry my bad: Here is what I am looking for: In below example I have $var1 value as 10 and $var2 as 5. For each iteration I want values to switch between these two. i.e. Iteration 1: $var1=10 and $var2=5 Iteration 2: $var1=5 and $var2=10 Iteration 3: $var1=10 and $var2=5 Iteration 4: $var1=5 and $var2=10 so on and so forth. I tried something like below which is incorrect use strict; use warnings; my $var1=10; my $var2=5; foreach(1..10) { $var1=$var2; $var2=$var1; print "Var1 is:$var1\n"; print "Var2 is:$var2\n"; }

      Hello akki_best, and welcome to the Monastery!

      $var1 = $var2; $var2 = $var1;

      That won’t work, because by the time you get to the second command, the value of $var1 has already been overwritten by the first command. But in Perl, swapping these values is as simple as:

      ($var1, $var2) = ($var2, $var1);

      P.S. Please format your code using <code> tags. See Markup in the Monastery.

      Hope that helps,

      Athanasius <°(((><contra mundum Iustus alius egestas vitae, eros Piratica,