diff options
| author | Adam Russell <ac.russell@live.com> | 2020-11-01 14:50:52 -0500 |
|---|---|---|
| committer | Adam Russell <ac.russell@live.com> | 2020-11-01 14:50:52 -0500 |
| commit | deaab9ed10a31d6858630064dec4a646368ae149 (patch) | |
| tree | a3c9ea280653fdc8008a0fe58e82a33a19732881 /challenge-084 | |
| parent | dadcf251061d31b7073bd05005420d46fec6a8b3 (diff) | |
| download | perlweeklychallenge-club-deaab9ed10a31d6858630064dec4a646368ae149.tar.gz perlweeklychallenge-club-deaab9ed10a31d6858630064dec4a646368ae149.tar.bz2 perlweeklychallenge-club-deaab9ed10a31d6858630064dec4a646368ae149.zip | |
solution for challenge 084
Diffstat (limited to 'challenge-084')
| -rw-r--r-- | challenge-084/adam-russell/blog.txt | 1 | ||||
| -rw-r--r-- | challenge-084/adam-russell/perl/ch-1.pl | 24 |
2 files changed, 25 insertions, 0 deletions
diff --git a/challenge-084/adam-russell/blog.txt b/challenge-084/adam-russell/blog.txt new file mode 100644 index 0000000000..d5dd4113f7 --- /dev/null +++ b/challenge-084/adam-russell/blog.txt @@ -0,0 +1 @@ +http://www.rabbitfarm.com/cgi-bin/blosxom/2020/11/01#pwc084 diff --git a/challenge-084/adam-russell/perl/ch-1.pl b/challenge-084/adam-russell/perl/ch-1.pl new file mode 100644 index 0000000000..271bad6883 --- /dev/null +++ b/challenge-084/adam-russell/perl/ch-1.pl @@ -0,0 +1,24 @@ +use strict; +use warnings; +## +# You are given an integer $N. +# Write a script to reverse the given integer and print the result. +# Print 0 if the result doesn’t fit in 32-bit signed integer. +## +use Config; +use boolean; +use constant MAX_32BIT_SIGNED => 2_147_483_647; + +sub reverse_digits{ + my($n) = @_; + return 0 if $n > MAX_32BIT_SIGNED || $n < -1*MAX_32BIT_SIGNED; + my $negative = $n < 0 ? true : false; + $n = abs($n) if $negative; + return join("", reverse split(//, $n)) if !$negative; + return "-" . join("", reverse split(//, $n)); +} + +MAIN:{ + my $A = $ARGV[0]; + print reverse_digits($A) . "\n"; +}
\ No newline at end of file |
