diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-04-30 02:56:52 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-04-30 02:56:52 +0100 |
| commit | 3c598e57925743c5ddc55a13c79595e6b49e92db (patch) | |
| tree | 6e4b1b4dd4b73722e5e5df3085412409e0073125 | |
| parent | b736edcc3535a9d84a7a97cf45f3405c9f393387 (diff) | |
| download | perlweeklychallenge-club-3c598e57925743c5ddc55a13c79595e6b49e92db.tar.gz perlweeklychallenge-club-3c598e57925743c5ddc55a13c79595e6b49e92db.tar.bz2 perlweeklychallenge-club-3c598e57925743c5ddc55a13c79595e6b49e92db.zip | |
- Minor improvement to Compare Version solution.
| -rw-r--r-- | challenge-058/mohammad-anwar/perl/ch-1.pl | 3 | ||||
| -rw-r--r-- | challenge-058/mohammad-anwar/perl/ch-1a.pl | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/challenge-058/mohammad-anwar/perl/ch-1.pl b/challenge-058/mohammad-anwar/perl/ch-1.pl index 93d5a3457c..a94471f3f8 100644 --- a/challenge-058/mohammad-anwar/perl/ch-1.pl +++ b/challenge-058/mohammad-anwar/perl/ch-1.pl @@ -10,6 +10,9 @@ print sprintf("%s cmp %s = %d\n", $v1, $v2, cmp_version($v1, $v2)); sub cmp_version { my ($v1, $v2) = @_; + # Short circuit, good idea? + return 0 if ($v1 eq $v2); + my @v1 = split /\./, $v1; my @v2 = split /\./, $v2; diff --git a/challenge-058/mohammad-anwar/perl/ch-1a.pl b/challenge-058/mohammad-anwar/perl/ch-1a.pl index 5a440cf7da..6591aec035 100644 --- a/challenge-058/mohammad-anwar/perl/ch-1a.pl +++ b/challenge-058/mohammad-anwar/perl/ch-1a.pl @@ -9,13 +9,17 @@ is (cmp_version('0.1', '1.1'), -1, '0.1 < 1.1'); is (cmp_version('2.0', '1.2'), 1, '2.0 > 1.2'); is (cmp_version('1.2', '1.2_5'), -1, '1.2 < 1.2_5'); is (cmp_version('1.2.2', '1.2_1'), 1, '1.2.2 > 1.2_1'); -is (cmp_version('1.2.1', '1.2.1'), 0, '1.2.1 = 1.2.1'); +is (cmp_version('1.2_1', '1.2_1'), 0, '1.2_1 = 1.2_1'); +is (cmp_version('1.2.2', '1.2_1'), 1, '1.2.2 > 1.2_1'); done_testing; sub cmp_version { my ($v1, $v2) = @_; + # Short circuit, good idea? + return 0 if ($v1 eq $v2); + my @v1 = split /\./, $v1; my @v2 = split /\./, $v2; |
