Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
22
Task/Balanced-brackets/Red/balanced-brackets.red
Normal file
22
Task/Balanced-brackets/Red/balanced-brackets.red
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
; Functional code
|
||||
balanced-brackets: [#"[" any balanced-brackets #"]"]
|
||||
rule: [any balanced-brackets end]
|
||||
balanced?: func [str][parse str rule]
|
||||
|
||||
; Tests
|
||||
tests: [
|
||||
good: ["" "[]" "[][]" "[[]]" "[[][]]" "[[[[[]]][][[]]]]"]
|
||||
bad: ["[" "]" "][" "[[]" "[]]" "[]][[]" "[[[[[[]]]]]]]"]
|
||||
]
|
||||
|
||||
foreach str tests/good [
|
||||
if not balanced? str [print [mold str "failed!"]]
|
||||
]
|
||||
foreach str tests/bad [
|
||||
if balanced? str [print [mold str "failed!"]]
|
||||
]
|
||||
|
||||
repeat i 10 [
|
||||
str: random copy/part "[][][][][][][][][][]" i * 2
|
||||
print [mold str "is" either balanced? str ["balanced"]["unbalanced"]]
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue