RosettaCodeData/Task/Balanced-brackets/Icon/balanced-brackets.icon
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

15 lines
423 B
Text

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