http://qs321.pair.com?node_id=1225565


in reply to Final Print Statement in Foreach Loop Prints Twice

If the two words are not anagrams then %anaHash will have two keys as the $sortWord will be different for the two words entered. Which means you go around your for each twice for none anagrams and only once if they are anagrams.

Depending on your future plans to expand on this script. You may be able to do away with the loop and replace it with an if which identifies the $sortWord is the same else print not an anagram. If you have a reason for the loop I would suggest moving the that else statement outside the loop and make it an if conditional on a $anagramFound flag populated by the earlier checks.