basic2c/test_redim.bas
2026-02-21 18:51:40 -06:00

70 lines
1 KiB
QBasic

' Test dynamic arrays and REDIM
DIM arr(5) AS INTEGER
DIM i AS INTEGER
' Fill initial array
FOR i = 0 TO 5
arr(i) = i * 10
NEXT i
PRINT "Before REDIM:"
FOR i = 0 TO 5
PRINT arr(i);
NEXT i
PRINT ""
' Resize array larger
REDIM arr(10) AS INTEGER
arr(8) = 88
arr(10) = 100
PRINT "After REDIM:"
FOR i = 0 TO 10
PRINT arr(i);
NEXT i
PRINT ""
' Test string array
DIM names(3) AS STRING
names(0) = "Alice"
names(1) = "Bob"
names(2) = "Charlie"
names(3) = "Diana"
PRINT "Names:"
FOR i = 0 TO 3
PRINT names(i)
NEXT i
' Test FOR with STEP
PRINT "Even numbers 0 to 10:"
FOR i = 0 TO 10 STEP 2
PRINT i;
NEXT i
PRINT ""
' Test negative step
PRINT "Countdown by 2:"
FOR i = 10 TO 0 STEP -2
PRINT i;
NEXT i
PRINT ""
' Test integer division and MOD
DIM a AS INTEGER
DIM b AS INTEGER
a = 17
b = 5
PRINT "17 \ 5 = "; a \ b
PRINT "17 MOD 5 = "; a MOD b
' Test nested loops with EXIT
PRINT "Nested loop with EXIT FOR:"
DIM j AS INTEGER
FOR i = 1 TO 5
FOR j = 1 TO 5
IF j = 3 THEN EXIT FOR
PRINT i * 10 + j;
NEXT j
PRINT "";
NEXT i