diff options
| -rw-r--r-- | challenge-051/cristian-heredia/perl/ch-1.pl | 68 | ||||
| -rw-r--r-- | challenge-051/cristian-heredia/perl/ch-2.pl | 60 |
2 files changed, 128 insertions, 0 deletions
diff --git a/challenge-051/cristian-heredia/perl/ch-1.pl b/challenge-051/cristian-heredia/perl/ch-1.pl new file mode 100644 index 0000000000..98658a7cc0 --- /dev/null +++ b/challenge-051/cristian-heredia/perl/ch-1.pl @@ -0,0 +1,68 @@ +use strict; +use warnings; + +#3 Sum +#Given an array @Lof integers. Write a script to find all unique triplets such that a + b + c is same as the given target T. Also make sure a <= b <= c. +# +#Here is wiki page for more information. +# +#Example: +# +#@L = (-25, -10, -7, -3, 2, 4, 8, 10); +# +#One such triplet for target 0 i.e. -10 + 2 + 8 = 0. + +my @aNumber; +my $digits = 7; +my $start = '-99'; +my $end = 99; +my $random_number; +my $target = 0; +my $total; +my $message = ''; + +createNumber(); +checkNumber(); + +sub createNumber { + + for (my $i = 0; $i < $digits; $i++) { + $random_number = $start + int rand ($end - $start + 1); + $aNumber[$i] = $random_number; + } + print "@aNumber\n"; +} + +sub checkNumber { + + for (my $j=0; $j<$digits; $j++) { + + for (my $k=0; $k<$digits; $k++) { + + if ($j != $k){ + + for (my $l=0; $l<$digits; $l++) { + + if ($l != $k and $j != $l){ + $total = $aNumber[$j] +$aNumber[$k] +$aNumber[$l]; + if ($total == $target and $aNumber[$j] < $aNumber[$k] and $aNumber[$k] < $aNumber[$l]) { + $message = $message."Result that match the criteria are the numbers: $aNumber[$j], $aNumber[$k], $aNumber[$l]\n"; + print "$message\n"; + } + } + } + } + } + } + if ($message eq '') { + print "There are no results\n"; + } +} + + + + + + + + diff --git a/challenge-051/cristian-heredia/perl/ch-2.pl b/challenge-051/cristian-heredia/perl/ch-2.pl new file mode 100644 index 0000000000..d448db8b4d --- /dev/null +++ b/challenge-051/cristian-heredia/perl/ch-2.pl @@ -0,0 +1,60 @@ +use strict; +use warnings; + +#Colourful Number +#Write a script to display all Colorful Number with 3 digits. +# +#A number can be declare Colorful Number where all the products of consecutive subsets of digit are different. +# +#For example, 263 is a Colorful Number since 2, 6, 3, 2x6, 6x3, 2x6x3 are unique. + +my @aNumber; +my $digits = 3; +my $random_number; +my $number = ''; +my $first = ''; +my $second = ''; +my $third = ''; +my $firstMult = ''; +my $secondMult = ''; +my $thirdMult = ''; +my $fourthMult = ''; + +createNumber(); +checkNumber(); + + +sub createNumber { + + for (my $i = 0; $i < $digits; $i++) { + $random_number = int(rand(10)); + $aNumber[$i] = $random_number; + $number = $number.$random_number; + } + +} + +sub checkNumber { + + $first = $aNumber[0]; + $second = $aNumber[1]; + $third = $aNumber[2]; + $firstMult = $first * $second; + $secondMult = $first * $third; + $thirdMult = $second * $third; + $fourthMult = $first * $second * $third; + + if ($first != $second and $first != $third and $second != $third + and $firstMult != $first and $firstMult != $second and $firstMult != $third + and $secondMult != $first and $secondMult != $second and $secondMult != $third + and $thirdMult != $first and $thirdMult != $second and $thirdMult != $third + and $fourthMult != $first and $fourthMult != $second and $fourthMult != $third + and $firstMult != $secondMult and $firstMult != $second and $secondMult != $third) { + print "The number $number is a colorful Number"; + } + else { + print "The number $number is not a colorful Number"; + } + +} + |
