while (length($num) > 1) { my $sum = 0; map { $sum += $_ } split '', $num; $num = $sum; }