aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Wilson <steven1170@zoho.eu>2019-10-23 10:53:11 +0100
committerSteven Wilson <steven1170@zoho.eu>2019-10-23 10:53:11 +0100
commit55d0dcc431b9ea786a30d2dac3e1291dd0f63520 (patch)
tree892808cd616a0e58ad383a36fa1a3c8d11104fb5
parent20a4db6a585d62ff2a5516efc0c0ca49934530f5 (diff)
downloadperlweeklychallenge-club-55d0dcc431b9ea786a30d2dac3e1291dd0f63520.tar.gz
perlweeklychallenge-club-55d0dcc431b9ea786a30d2dac3e1291dd0f63520.tar.bz2
perlweeklychallenge-club-55d0dcc431b9ea786a30d2dac3e1291dd0f63520.zip
add week 31 task 1 solution
-rw-r--r--challenge-031/steven-wilson/perl5/ch-1.pl28
1 files changed, 28 insertions, 0 deletions
diff --git a/challenge-031/steven-wilson/perl5/ch-1.pl b/challenge-031/steven-wilson/perl5/ch-1.pl
new file mode 100644
index 0000000000..5ce565136c
--- /dev/null
+++ b/challenge-031/steven-wilson/perl5/ch-1.pl
@@ -0,0 +1,28 @@
+#!/usr/bin/env perl
+# Author: Steven Wilson
+# Date: 2019-10-22
+# Week: 031
+
+# Task #1
+# Create a function to check divide by zero error without checking if
+# the denominator is zero.
+
+use strict;
+use warnings;
+use feature qw/ say /;
+use Test::More;
+
+ok( is_divide_by_zero( 1, 0 ) == 1, "Test zero denominator" );
+ok( is_divide_by_zero( 1, 1 ) == 0, "Test non-zero denominator" );
+done_testing();
+
+sub is_divide_by_zero {
+ my ( $numerator, $denominator ) = @_;
+ eval { my $answer = $numerator / $denominator; };
+ if ( $@ =~ /Illegal division by zero/ ) {
+ return 1;
+ }
+ else {
+ return 0;
+ }
+}