new files
This commit is contained in:
parent
3af7344581
commit
86c034bb8b
1364 changed files with 21352 additions and 0 deletions
57
Task/Balanced-brackets/BASIC/balanced-brackets.bas
Normal file
57
Task/Balanced-brackets/BASIC/balanced-brackets.bas
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
DECLARE FUNCTION checkBrackets% (brackets AS STRING)
|
||||
DECLARE FUNCTION generator$ (length AS INTEGER)
|
||||
|
||||
RANDOMIZE TIMER
|
||||
|
||||
DO
|
||||
x$ = generator$ (10)
|
||||
PRINT x$,
|
||||
IF checkBrackets(x$) THEN
|
||||
PRINT "OK"
|
||||
ELSE
|
||||
PRINT "NOT OK"
|
||||
END IF
|
||||
LOOP WHILE LEN(x$)
|
||||
|
||||
FUNCTION checkBrackets% (brackets AS STRING)
|
||||
'returns -1 (TRUE) if everything's ok, 0 (FALSE) if not
|
||||
DIM L0 AS INTEGER, sum AS INTEGER
|
||||
|
||||
FOR L0 = 1 TO LEN(brackets)
|
||||
SELECT CASE MID$(brackets, L0, 1)
|
||||
CASE "["
|
||||
sum = sum + 1
|
||||
CASE "]"
|
||||
sum = sum - 1
|
||||
END SELECT
|
||||
IF sum < 0 THEN
|
||||
checkBrackets% = 0
|
||||
EXIT FUNCTION
|
||||
END IF
|
||||
NEXT
|
||||
|
||||
IF 0 = sum THEN
|
||||
checkBrackets% = -1
|
||||
ELSE
|
||||
checkBrackets% = 0
|
||||
END IF
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION generator$ (length AS INTEGER)
|
||||
z = INT(RND * length)
|
||||
IF z < 1 THEN generator$ = "": EXIT FUNCTION
|
||||
REDIM x(z * 2) AS STRING
|
||||
FOR i = 0 TO z STEP 2
|
||||
x(i) = "["
|
||||
x(i + 1) = "]"
|
||||
NEXT
|
||||
FOR i = 1 TO UBOUND(x)
|
||||
z = INT(RND * 2)
|
||||
IF z THEN SWAP x(i), x(i - 1)
|
||||
NEXT
|
||||
xx$ = ""
|
||||
FOR i = 0 TO UBOUND(x)
|
||||
xx$ = xx$ + x(i)
|
||||
NEXT
|
||||
generator$ = xx$
|
||||
END FUNCTION
|
||||
Loading…
Add table
Add a link
Reference in a new issue