#!/usr/bin/perl use warnings; use File::Glob(bsd_glob); do { @array=@array1; print"\n\n Press 1 to Enter New File or 2 to Combine: "; $entry=; chomp $entry; ############################ # Use of if Conditional: ############################ if ($entry==1) { print"\n\n Enter New File Name (.txt): "; $filename = ; chomp $filename; ################################ # open the file, or exit: ### ################################ unless ( open(FILE, $filename) ) { print "Cannot open file \"$filename\"\n\n"; exit;} @DNA= ; close FILE; $DNA=join('',@DNA); push @array, $DNA; @array1=@array;} # Curly brace for entry1 ends: elsif ($entry==2) { @array1=@array; # Curly brace for entry2 starts $number=@array1; print"\n\n No. of Elements in Joined Array: $number\n"; print"\n Joined Array:\n"; print @array1; # Use of foreach LOOP to view each element of joined array: $num=0; foreach my $element (@array1) { $num++; print"\n Array No.$num of the Joined Array:\n"; print $element; print"\n"; # Code to surround each element of joined array # followd by comma i.e. [ ], @element=split('',$element); $str1=sprintf '[%s],'x @element,@element; print"\n str1: $str1\n"; push @ARRAY1,$str1; } # Curly brace for foreach ends: print"\n ARRAY:\n"; print @ARRAY1; print"\n"; # To produce all possible combinations of different elements: $combi=join('',map {'{'.join (',',@$_).'}'} @ARRAY1); @list=bsd_glob($combi); print"\n Results:\n"; print"\n @list\n"; } # Curly brace for Entry 2 ends: } until ($entry==2); # Square bracket for do-until: exit;