diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2021-10-24 22:25:30 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-24 22:25:30 +0100 |
| commit | f76399be01c5067e241b4ea177a06d96d0854798 (patch) | |
| tree | 4621a446027192c115b304e8cddf3f4b69a00ec1 /challenge-135 | |
| parent | fefcfe65fc453e6eeb09e1fa9cee9a0d9cd7d046 (diff) | |
| parent | eb505a27688fd7d01e269dc68f61f9bb7fe42b57 (diff) | |
| download | perlweeklychallenge-club-f76399be01c5067e241b4ea177a06d96d0854798.tar.gz perlweeklychallenge-club-f76399be01c5067e241b4ea177a06d96d0854798.tar.bz2 perlweeklychallenge-club-f76399be01c5067e241b4ea177a06d96d0854798.zip | |
Merge pull request #5088 from E7-87-83/newt
modification
Diffstat (limited to 'challenge-135')
| -rw-r--r-- | challenge-135/cheok-yin-fung/julia/ch-1.jl | 46 | ||||
| -rw-r--r-- | challenge-135/cheok-yin-fung/perl/ch-2.pl | 2 |
2 files changed, 48 insertions, 0 deletions
diff --git a/challenge-135/cheok-yin-fung/julia/ch-1.jl b/challenge-135/cheok-yin-fung/julia/ch-1.jl new file mode 100644 index 0000000000..164fee485c --- /dev/null +++ b/challenge-135/cheok-yin-fung/julia/ch-1.jl @@ -0,0 +1,46 @@ +# The Weekly Challenge 135 +# Task 1 Middle 3-digits +# Usage: include("ch-1.jl") + +function mid_three(x) + num = 0 + if typeof(x) == Int64 + num = x + else + try ( + num = parse(Int64, x) + ) catch + return "Not an integer. / Format ill-suited." + end + end + num = num > 0 ? num : -num; + str = string(num) + len = length(str) + if len % 2 == 0 + return "even number of digits" + else + if len < 3 + return "too short" + end + end + m = convert(Int64,(len+1) // 2) + return str[m-1]*str[m]*str[m+1] +end + + +testcases = [1234567, -123, 1, 10, 14285, 33554432, 10737418240] + +for a in testcases + println(mid_three(a)) +end + + +#= +345 +123 +too short +even number of digits +428 +even number of digits +741 +=# diff --git a/challenge-135/cheok-yin-fung/perl/ch-2.pl b/challenge-135/cheok-yin-fung/perl/ch-2.pl index 2b197fc888..3cb8ba1f83 100644 --- a/challenge-135/cheok-yin-fung/perl/ch-2.pl +++ b/challenge-135/cheok-yin-fung/perl/ch-2.pl @@ -9,6 +9,8 @@ say sedol($ARGV[0]) ? 1 : 0; sub sedol { return 0 if !defined($_[0]); + return 0 if $_[0] =~ m/[AEIOU]/; + return 0 if $_[0] !~ m/^[0-9B-Z]{7}$/; my %val; $val{$_} = $_ for (0..9); $val{$_} = ord($_)-ord("A")+10 for ("A".."Z"); |
