A * B = 20 A * C = 40 A * D = 8 A * E = 36 B * A = 20 B * C = 50 : : #### for my $x (sort keys %hash) { for my $y (sort grep { $_ ne $x } keys %hash) { printf "%s * %s = %d\n", $x, $y, $hash{$x} * $hash{$y}; } }