Monday 30 September 2019

How to assign more than one arrays to crate a complete hash in perl?


Method 1[Faster]:


                     %final=();
                    @first=(7,8,3,4);
                     @second=('a','s','d','f');
                     my %final;
                    @final{@first} = @second;
                     print %final;
Read more »

Labels: , , , , , ,

Wednesday 11 September 2019

How to print the elements of single hash in Perl without using sort builtin function in many methods?


Method 1:
                           %final=(9,2,1,4,7,6);
                           print "@{[%final]}";

Method  2:
                          %final=(9,2,1,4,7,6);
                          print %final,"\n";

Method  3:
                           %final=(9,2,1,4,7,6);
                           print "$_ $final{$_}\n" for (keys %final);

Method  4:
                           %final=(9,2,1,4,7,6);
                           while (my ($k,$v)=each %final){print "$k $v\n"}

Method  5:
                           %final=(9,2,1,4,7,6);
                           print "$_ => $final{$_}\n" for (sort keys %final);

Method  6:
                     
                          %final=(9,2,1,4,7,6);
                          @d=%final;
                           print @d;

Method  7:
                          %final=(9,2,1,4,7,6);
                          print map { "$_ $final{$_}\n" } keys %final;

Method  8:
                           %final=(9,2,1,4,7,6);
                           print map {$_ . " "} %final, "\n";

Method  9:

                           %final=(9,2,1,4,7,6);
                           foreach(keys %final) { print "$_   $final{$_}\n"; }

Method  10:
                           %final=(9,2,1,4,7,6);
                           map {print "$_  $final{$_}\n"; } keys %final;

Method 11:
                           %final=(9,2,1,4,7,6);
                           print "$_ $final{$_}\n" for keys %final;

kaavannan perl blogspot

Labels: , , , , ,

Tuesday 10 September 2019

How Many Possible ways to remove Duplicates in an array using perl?


Method 1:

sub filter {
    my %hash;
    grep !$hash{$_}++, @_;
}

my @array = qw(e f g h i);
my @final= filter(@array);


Method 2:

use List::MoreUtils qw(uniq);
my @array = qw(1 1 1 2 3 4 4);
my @final= uniq(@array);


Method 3:

my %hash = ();
foreach my $item (@array)
{
    $hash{$item}++;
}
my @final = keys %hash;


Method 4:

my @array=qw( 3 2 3 4 4 3 2);
my @final=keys %{{ map{$_=>1}@array}};
print join ' ', sort{$a<=>$b} @final;


Method 5:

%hash=();
my @array = qw(e j g h i);
@final = grep { ! $hash{$_} ++ } @array;


Method 6:

my @array;
my @finals;

foreach my $var ( @array )
{
    if (! grep(/$var/, @finals ))
    {
          push( @finals, $var );
     }
}


Method 7:

my @array = qw(e f g h i);
my %hash;
@hash{@array}=(1..@array);
@final=keys%hash;


Method 8:

my @final = keys {map {$_ => 1} @array};


Method 9:

@array = qw(e f g h i);
%hash1   = map { $_ => 1 } @array;
@final = keys %hash1;


Method 10:
my @array = qw(e f g h i);
my %hash;
foreach my $v (@array){
        $hash{$v}=1;
}
@final=keys%hash;


kaavannan perl blogspot

Labels: , ,

Friday 6 September 2019

How to set Default value for a subroutine argument and how many ways we can do it?

subroutines variable may have more than one number of arguments, some arguments may get missing values,  providing default values for arguments is mandatory.

Method1:

           sub add
           {
               ($v1,$v2)=@_;
               $v2 ||=1;
           }


Method2:

          sub add
          {
               ($v1,$v2)=@_;
               if(!defined $v2)
               {
                   $v2=1;
               }
          }

Method3:

         sub add
         {
               $v1=shift @_;
               if($#_  >  0){
                   $v2=@_[1];
               }
               else
               {
                   $v2=1;
               }

Thursday 5 September 2019

How many ways to verify Perl scalar variable is initialized or defined?


 Method1:

          if !(defined $a)
         {

         }       

Method2:

         $a = defined $a? $a : {  };

Method3:
     
          $a = "Hi" unless defined $a;          

Method4: 
         
          $a = $a || "Hi";   
          
Method5:
     
           $a ||= "Hi";     

Method6:

            if ( length( $a || '' ))
            {

             }

kaavannan perl blogspot

Labels: , , , , , ,

Wednesday 4 September 2019

How many ways to return values in perl subroutine?

Method1:

        sub A
        {
              ($a,$b)=@_;
              return $a+$b;
        }
$B=A(1,2);


Method 2:

       sub A
        {
              ($a,$b)=@_;
              return $a,$b;
        }
$B=A(1,2);


Method 3:

       sub A
        {
              return @_;
        }
@B=A(@a);


Method 4:

       sub A
        {
              return  %H;
        }

%Hash = A;


Tuesday 3 September 2019

How to get current subroutine name in Perl and ways to do it?



Method 1:
   
             print __LINE__;


Method 2:

     By Using caller() function:

              my $sub_name = (caller(0))[3];


Method 3:

     By Using Sub::Identify Module:
   
             print __SUB__ ;


kaavannan perl blogspot

Labels: ,