aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-11-03 06:38:03 +0000
committerGitHub <noreply@github.com>2021-11-03 06:38:03 +0000
commit8e323f8aaedc7c5392eb83b7824ca282b786ddf5 (patch)
tree57e86871a492f79704b53299ec8236b744c90232
parent2084d3622843b3eaab84baf933e24eea5ad1c813 (diff)
parent477911d1172536cb4c4351f363936f8dc1870e29 (diff)
downloadperlweeklychallenge-club-8e323f8aaedc7c5392eb83b7824ca282b786ddf5.tar.gz
perlweeklychallenge-club-8e323f8aaedc7c5392eb83b7824ca282b786ddf5.tar.bz2
perlweeklychallenge-club-8e323f8aaedc7c5392eb83b7824ca282b786ddf5.zip
Merge pull request #5151 from oWnOIzRi/week137
add solution week 137 task 2 in perl
-rw-r--r--challenge-137/steven-wilson/perl/ch-2.pl32
1 files changed, 32 insertions, 0 deletions
diff --git a/challenge-137/steven-wilson/perl/ch-2.pl b/challenge-137/steven-wilson/perl/ch-2.pl
new file mode 100644
index 0000000000..67ff2d8919
--- /dev/null
+++ b/challenge-137/steven-wilson/perl/ch-2.pl
@@ -0,0 +1,32 @@
+#!/usr/bin/env perl
+# Week 135 Task 2
+# Lychrel Number
+
+use strict;
+use warnings;
+use Test::More;
+
+ok( is_lychrel_number(56) == 0, "Test 56" );
+ok( is_lychrel_number(57) == 0, "Test 57" );
+ok( is_lychrel_number(59) == 0, "Test 59" );
+ok( is_lychrel_number(196) == 1, "Test 196" );
+done_testing();
+
+sub is_lychrel_number {
+ my $number = shift;
+ my $max_iter = 500;
+ my $max_number = 10_000_000;
+ my $iter = 0;
+ my $is_lychrel_number = 1;
+ ( $number >= 10 && $number <= 1000 )
+ or die "Number must be be between 10 an 1000\n";
+ while ( $iter < $max_iter && $number < $max_number ) {
+ $number += reverse $number;
+ if ( $number == reverse $number ) {
+ $is_lychrel_number = 0;
+ last;
+ }
+ $iter++;
+ }
+ return $is_lychrel_number;
+}