Jump to content

Balanced brackets: Difference between revisions

no edit summary
(→‎{{header|APL}}: missing brackets)
No edit summary
Line 888:
 
=={{header|Arturo}}==
<lang arturorebol>isBalanced: @(function [s){][
 
<lang arturo>isBalanced: @(s){
cnt: 0
loop [charssplit s] {[ch][
if? &ch="]" {[
if &="[" -> cnt: cnt+-1
if [cnt: cnt-1]<0 -> return false
}]
else [
if ch="[" -> cnt: cnt+1
]
}]
 
return cnt=0
loop [chars s] {
]
if &="]" {
if [cnt: cnt-1]<0 -> return false
loop 1..910 @('i){ [
} {
str: [join [map 0..(2*i)-1 ->[x][ sample #(["[" "]") ] ""]
if &="[" -> cnt: cnt+1
}
}
 
return cnt=0
}
 
loop 1..9 @(i){
str: [join [map 0..2*i-1 -> sample #("[" "]") ] ""]
prints str
if [isBalanced str] { print " OK" } { print " Not OK" }
}
</lang>
 
{{out}}
 
if? [isBalanced str] { print " OK" } {-> print " Not OK" }
<pre>[] OK
else -> print " Not OK"
[[]] OK
]</lang>
[[]]][ Not OK
]]][[]]] Not OK
[[][][][[] Not OK
[[][[[[]]]]] OK
[[][[][[]][[][ Not OK
]]][[[][[]][[[]] Not OK
]]][][[[][][][]]]] Not OK</pre>
 
=={{header|AutoHotkey}}==
1,532

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.