Sorting algorithms/Bubble sort: Difference between revisions
→{{header|BASIC}}: Clarified implementation of BASIC: QuickBASIC.
(Dialects of BASIC moved to the BASIC section.) |
(→{{header|BASIC}}: Clarified implementation of BASIC: QuickBASIC.) |
||
Line 1,141:
=={{header|BASIC}}==
{{works with|QuickBasic|4.5}}▼
<syntaxhighlight lang="qbasic">▼
DO▼
changed = 0▼
FOR I = 1 to size -1▼
IF nums(I) > nums(I + 1) THEN▼
tmp = nums(I)▼
nums(I) = nums(I + 1)▼
nums(I + 1) = tmp▼
changed = 1▼
END IF▼
NEXT▼
LOOP WHILE(NOT changed)</syntaxhighlight>▼
==={{header|Applesoft BASIC}}===
<syntaxhighlight lang="basic">0 GOSUB 7 : IC = I%(0)
Line 1,615 ⟶ 1,598:
Until hasChanged = #False
EndProcedure</syntaxhighlight>
==={{header|QuickBASIC}}===
▲{{works with|QuickBasic|4.5}}
▲<syntaxhighlight lang="qbasic">
' Sorting algorithms/Bubble sort
' Prepare data
size = 10
OPTION BASE 1
DIM nums(size)
RANDOMIZE TIMER
PRINT "Before:";
FOR I = 1 TO size
nums(I) = INT(RND * 100)
PRINT USING " ##"; nums(I);
NEXT I
PRINT
' Sort
▲DO
▲ changed = 0
▲ IF nums(I) > nums(I + 1) THEN
▲ tmp = nums(I)
▲ nums(I) = nums(I + 1)
▲ nums(I + 1) = tmp
▲ changed = 1
▲ END IF
▲ NEXT I
'Display result
PRINT "After: ";
FOR I = 1 TO 10
PRINT USING " ##"; nums(I);
NEXT I
PRINT
END
</syntaxhighlight>
{{out}} (2 samples)
<pre>
Before: 91 97 3 62 17 48 89 7 2 66
After: 2 3 7 17 48 62 66 89 91 97
</pre>
<pre>
Before: 22 60 45 44 54 93 84 27 21 64
After: 21 22 27 44 45 54 60 64 84 93
</pre>
==={{header|REALbasic}}===
|