10 REM "B.BUBBLE" 20 REM BUBBLE SORT 30 REM SIMPLEST FORM 40 : 50 MODE7:VDU23;8202;0;0;0; 60 @%=&50506 70 ONERRORREPORT:PRINT" at line ";ERL:END 80 pass%=0 90 size%=20 100 max%=40 110 seed%=1 120 DIMA%(size%) 130 PROCrandomize 140 PROCbubble_sort 150 PRINTCHR$(11)+" Sorted." 160 END 170 : 180 DEFPROCrandomize 190 seed%=RND(-seed%) 200 FOR loop%=0 TO size% 210 A%(loop%)=RND(max%) 220 NEXT loop% 230 PROCshowdata 240 ENDPROC 250 : 260 DEFPROCshowdata 270 CLS:PRINT" Bubble sort routine."'" Pass number ";pass%; 280 IF pass%=0 THEN PRINT" Initial state." ELSE PRINT 290 FOR loop%=0 TO size% 300 PRINTA%(loop%) 310 NEXT loop% 320 PRINT"ˆ…" 330 REPEAT:A=GET:UNTIL A=32 340 ENDPROC 350 : 360 DEFPROCbubble_sort 370 REPEAT 380 pass%=pass%+1 390 flag=FALSE 400 FOR loop%=0 TO size%-1 410 IF A%(loop%)