From 55d2d0e60dda0983f5b88657bd6fcc58292f5c2d Mon Sep 17 00:00:00 2001 From: aliciabielsa Date: Tue, 7 Jan 2020 11:56:42 +0100 Subject: challenge-042 --- challenge-042/alicia-bielsa/perl/ch-1.pl | 8 +++++++ challenge-042/alicia-bielsa/perl/ch-2.pl | 40 ++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 challenge-042/alicia-bielsa/perl/ch-1.pl create mode 100644 challenge-042/alicia-bielsa/perl/ch-2.pl diff --git a/challenge-042/alicia-bielsa/perl/ch-1.pl b/challenge-042/alicia-bielsa/perl/ch-1.pl new file mode 100644 index 0000000000..f26de832a1 --- /dev/null +++ b/challenge-042/alicia-bielsa/perl/ch-1.pl @@ -0,0 +1,8 @@ +use strict; +use warnings; + + +foreach my $i ( 1..50 ) { + printf("Decimal $i = Octal %o\n",$i); +} + diff --git a/challenge-042/alicia-bielsa/perl/ch-2.pl b/challenge-042/alicia-bielsa/perl/ch-2.pl new file mode 100644 index 0000000000..e5b510a4ca --- /dev/null +++ b/challenge-042/alicia-bielsa/perl/ch-2.pl @@ -0,0 +1,40 @@ +use strict; +use warnings; + +my $openingBracket = '('; +my $closingBracket = ')'; +my @aBracketSymbols = ($openingBracket, $closingBracket); +my $bracketString = ''; + +my $lengthString = int(rand(10)); +foreach my $i (0..$lengthString){ + $bracketString .= $aBracketSymbols[int(rand(2))]; +} + +my $balanceResult = isStringBalanced($bracketString); +print "$bracketString - $balanceResult\n"; + +sub isStringBalanced { + my $stringToCkeck = shift; + my $balanceCount = 0; + foreach my $bracket (split ('',$stringToCkeck)){ + if ($bracket eq $closingBracket ){ + if ( $balanceCount == 0){ + return 'KO'; + } else { + $balanceCount --; + } + } elsif ($bracket eq $openingBracket){ + $balanceCount ++; + } + } + if ($balanceCount == 0 ){ + return 'OK'; + } else { + return 'KO'; + } +} + + + +exit 0; \ No newline at end of file -- cgit