70 lines
1 KiB
QBasic
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
|