in reply to array and concatenate
If I understand what you want the following should do the trick:
use strict; use warnings; my @numbers = map {$_, $_} (4, 7, 11, 14); my @breads = split '', 'wrifirwf'; my @parts; my $breadIndex = $#breads; while (@numbers) { push @parts, $breads[$breadIndex = ($breadIndex + 1) % @breads]; push @parts,shift @numbers; push @parts,$breads[$breadIndex = ($breadIndex + 1) % @breads]; } print join ' ', @parts;
Prints:
w 4 r i 4 f i 7 r w 7 f w 11 r i 11 f i 14 r w 14 f
The key is to recycle the breads using the modulus operator to wrap the bread index.
|
|---|