#!/usr/bin/perl-w use warnings; use diagnostics; print "Enter the file containing the amino acid sequence \n"; my $filename = ; chomp $filename; unless (open(FILENAME, $filename)) { print "File $filename not found. Exiting program \n"; exit; } my @AASeq=; my $length = @AASeq; close FILENAME; my @AAMatrix = ('A','C','D','E','F','G','H','I','K','L','M','N','P','Q','R','S','T','V','W','Y'); my @AAOcc = (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); my @AAFreq = (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0); my $i=0; my $counter=0; #Counter for the initialized matrix while ($counter<=$length) { for ($i=0; $i<=19; $i++) { if( $AASeq[$counter]=~ $AAMatrix[$i]) { ++$AAOcc[$counter]; next; } } ++$counter; } #Calculating frequency of amino acid occurrence my $x=0; for ($x=0; $x<=19; $x++) { $AAFreq[$x] = $AAOcc[$x]/$length; } #Printing out the final array print "AMINO ACID \t OCCURRENCE \t FREQUENCY "; my $y=0; for ($y=0; $y<=19; $y++) { print "$AAMAtrix [$y] \t\t $AAOcc[$y] \t\t $AAFreq[$y] \t\t\n"; }