in reply to Value into array

I don't fully understand exactly what you need, but here is an additional way to Marshall's to do what you may want:

c:\@Work\Perl\monks>perl -le "use warnings; use strict; ;; use Data::Dumper; ;; my @ra = (100, 200, 300, 400); print Dumper \@ra; ;; @ra = map { [ $_+1, $_-1 ] } @ra; print Dumper \@ra; " $VAR1 = [ 100, 200, 300, 400 ]; $VAR1 = [ [ 101, 99 ], [ 201, 199 ], [ 301, 299 ], [ 401, 399 ] ];
See the map built-in and the core (i.e., supplied with all standard Perl releases) module Data::Dumper.


Give a man a fish:  <%-{-{-{-<

Replies are listed 'Best First'.
Re^2: Value into array
by ameezys (Acolyte) on Apr 08, 2019 at 07:29 UTC

    @input_array = (N1,N2,N3,N6,N7);

    A[N1] = 1 A[N2] = 1 A[N3] = 1 A[N6] = 1 A[N7] = 1 B[N1] = 1 B[N2] = 1 B[N3] = 1 B[N6] = 1 B[N7] = 1

    Im trying to store the value for A and B of each data inside the array into 1. Meaning that the data N1 has two values inside it which is A and B. Somehow I couldn't figure out how to store the value.

      A hash instead of an array could be useful for you:

      use strict; use warnings; my %hash = ( N1 => { A => 1, B => 1}, N2 => { A => 1, B => 1}, N3 => { A => 1, B => 1}, N6 => { A => 1, B => 1}, N7 => { A => 1, B => 1}, ); # usage e.g. print $hash{N3}{A}, "\n";
        Okay, thank you. How about if the input_array is obtained from user input. So the variable isn't fixed. Meaning that N1, N2, N3,... is not fixed.

      Hello ameezys,

      From your initial description I believed also as other fellow Monks that you are looking for ARRAYS OF ARRAYS. Based on your updated description it looks that you are looking for HASHES OF ARRAYS.

      Sample of code below:

      #!/usr/bin/perl use strict; use warnings; use Data::Dumper; my %HoA = ( N1 => [undef], N2 => [undef], N3 => [undef], N4 => [undef] ); print Dumper \%HoA; # add to an existing row push @{ $HoA{"N1"} }, "A", "B"; print Dumper \%HoA; __END__ $ perl test.pl $VAR1 = { 'N3' => [ undef ], 'N2' => [ undef ], 'N1' => [ undef ], 'N4' => [ undef ] }; $VAR1 = { 'N3' => [ undef ], 'N2' => [ undef ], 'N1' => [ undef, 'A', 'B' ], 'N4' => [ undef ] };

      Is it possible to be looking for HASHES OF HASHES?

      Hope this helps, let us know if this is not what you are looking for.

      Seeking for Perl wisdom...on the process of learning...not there...yet!