How to resolve the algorithm Balanced brackets step by step in the M2000 Interpreter programming language
Published on 12 May 2024 09:40 PM
How to resolve the algorithm Balanced brackets step by step in the M2000 Interpreter programming language
Table of Contents
Problem Statement
Task:
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Balanced brackets step by step in the M2000 Interpreter programming language
Source code in the m2000 programming language
module Balanced_brackets{
// Generate a string with N opening brackets [ and with N closing brackets ], in some arbitrary order.
function randomBrackets(max as long) {
if max<1 then max=1
def putbracket()=mid$("[[[[]]",random(1,6),1)
dim a(random(1, max)) as string<
=a()#str$("")
}
// Determine whether the generated string is balanced; that is, whether it consists entirely of pairs of opening/closing brackets (in that order), none of which mis-nest.
function check(s as string) {
long i, level
for i=1 to len(s)
if mid$(s,i,1)="[" then level++ else level--
if level<0 then exit for
next
=level=0
}
string k
boolean m
do
k=randomBrackets(10)
m=check(k)
print k;@(12);": ";if$(m->"OK", "NOT OK")
until m
}
Balanced_brackets
You may also check:How to resolve the algorithm Non-decimal radices/Input step by step in the Nanoquery programming language
You may also check:How to resolve the algorithm The Name Game step by step in the ALGOL 68 programming language
You may also check:How to resolve the algorithm Conditional structures step by step in the Transd programming language
You may also check:How to resolve the algorithm Range extraction step by step in the Raku programming language
You may also check:How to resolve the algorithm Euler's identity step by step in the Ruby programming language