かみぽわーる

kamipo's blog

配列Aの各要素に同じ長さの配列Bの各要素をくっつけた配列を出す

わかりにくいので、例を見てください。

@base   = (1, 2, 3);
@suffix = ("a", "b", "c");

であれば、

("1a", "1b", "1c", "2a", "2b", "2c", "3a", "3b", "3c") 

のようになります。

もちろん、@base、@suffixは、もっと長い場合もあります。ただし、配列の要素数は同じです。

#!/usr/bin/perl
use strict;
use warnings;

my @base   = (1, 2, 3);
my @suffix = ("a", "b", "c");
my @union  = ();

for ((@suffix) x @base) { push @union, $base[@union/@base] . $_ }

print "@union";