From d30fc5ae79f425806819dd94a4f3945815a5b6a1 Mon Sep 17 00:00:00 2001 From: "alicia.bielsa" Date: Sun, 12 May 2019 13:27:31 +0200 Subject: Challenge 1 week 7 --- challenge-007/alicia-bielsa/perl5/ch-1.pl | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 challenge-007/alicia-bielsa/perl5/ch-1.pl diff --git a/challenge-007/alicia-bielsa/perl5/ch-1.pl b/challenge-007/alicia-bielsa/perl5/ch-1.pl new file mode 100644 index 0000000000..d715a24f1f --- /dev/null +++ b/challenge-007/alicia-bielsa/perl5/ch-1.pl @@ -0,0 +1,29 @@ +#Print all the niven numbers from 0 to 50 inclusive, each on their own line. +#A niven number is a non-negative number that is divisible by the sum of its digits. +use strict; +use warnings; + +foreach my $i (0..50){ + if (isNiven($i)){ + print "$i\n"; + } +} + + + sub isNiven { + my $number = shift; + + my $sumDigits = 0; + my @aDigits = split('', $number); + foreach my $digit (@aDigits){ + $sumDigits += $digit; + } + if ($sumDigits == 0){ + return 0; + } + + if ($number % $sumDigits == 0){ + return 1; + } + return 0; + } \ No newline at end of file -- cgit