16 lines
423 B
Plaintext
16 lines
423 B
Plaintext
procedure main(arglist)
|
|
every s := genbs(!arglist) do
|
|
write(image(s), if isbalanced(s) then " is balanced." else " is unbalanced")
|
|
end
|
|
|
|
procedure isbalanced(s) # test if a string is balanced re: []
|
|
return (s || " ") ? (bal(,'[',']') = *s+1)
|
|
end
|
|
|
|
procedure genbs(i) # generate strings of i pairs of []
|
|
s := ""
|
|
every 1 to i do s ||:= "[]" # generate i pairs
|
|
every !s := ?s # shuffle
|
|
return s
|
|
end
|